Как я могу получить статусные процессы в проекте C? [дубликат]

Aug 18 2020

для моего проекта C мне нужно знать, в каком состоянии (выполнение, ожидание, завершение, ...) находятся различные процессы. Эти процессы созданы мной с помощью многих fork (). Кто-нибудь знает, как это сделать?

Пример: у меня есть процесс с PPID = x. Я делаю 3 fork () -> Я получаю три новых процесса с PID = x + 1, PID = x + 2 и PID = x + 3 (более или менее). Мне нужно знать, работают ли процессы с PID = x + 1, PID = x + 2 и PID = x + 3, ждут или завершены.

Ответы

AnthonySchanen Aug 17 2020 at 23:24

если вы сделаете 3 fork(), у вас будет более 3 новых процессов. У вас есть 2 ^ n процессов. n - количество звонковfork()

например

#include <stdio.h> 
#include <sys/types.h> 
int main() 
{ 
    fork(); 
    fork(); 
    fork(); 
    printf("hello\n"); 
    return 0; 
}

печатает это

hello
hello
hello
hello
hello
hello
hello
hello

также я верю, что на ваш вопрос здесь дан ответ