Как запустить подпроцесс с помощью systemd-run и дождаться его завершения - PullRequest
0 голосов
/ 05 июня 2019

Мне нужно запустить дочерний процесс из моего Java-процесса, который уничтожит родительский процесс.Как мне убедиться, что:

  • Ребенок не умирает, когда убивает родителя
  • Родитель ждет, пока ребенок убьет его (блоки вызова java)

Я запускаю дочерний процесс с помощью systemd-run, который помещает его в другую контрольную группу, что означает, что дочерний процесс не умирает, когда он убивает родителя.Проблема с этим подходом состоит в том, что родитель не ожидает завершения дочернего процесса.

Я хочу блокировать выполнение дочернего процесса, позволяя ему корректно уничтожить родительский процесс.

1 Ответ

0 голосов
/ 06 июня 2019

Я нашел решение.Команда systemd-run имеет флаг --wait, который обеспечивает точное поведение, которое я искал.

...