Я пытаюсь проверить произвольный процесс, если он запущен (состояние S) или нет. Если он остановлен (состояние T), я должен проснуться и дождаться его завершения. Пока я могу это сделать.
Мой вопрос таков: когда я жду его до конца sh, я открываю новый терминал и останавливаю этот процесс с помощью kill -STOP <PID>
, но ожидание продолжается.
Я жду:
while((check = kill(PID,0)) == 0);
Однако оказывается, что это просто проверяет, существует ли процесс или нет. Есть ли способ ждать такого произвольного процесса? Но подождите только состояние бега.