Мне нужно найти состояние дочернего процесса (запущен / приостановлен / завершен) без блокировки.Я нашел этот код, который помогает мне определить, работает ли он / закончен:
#include <sys/types.h>
#include <sys/wait.h>
int status;
pid_t return_pid = waitpid(process_id, &status, WNOHANG); /* WNOHANG def'd in wait.h */
if (return_pid == -1) {
/* error */
} else if (return_pid == 0) {
/* child is still running */
} else if (return_pid == process_id) {
/* child is finished. exit status in status */
}
Может ли этот код помочь мне обнаружить, если приостановлен \ спит? спасибо.