switch maquinas maquina finitos estados estado ejemplos diagrama con botones c process fork wait

maquinas - Simplemente verifique el proceso de estado en c



maquinas de estados finitos arduino (3)

Mátalo con la señal 0 y comprueba el valor de retorno.

Quiero saber el estado de un proceso. Creo que puedo utilizar las funciones de espera de la familia, pero en realidad no quiero esperar al proceso, simplemente verifique el estado y continúe.

Me gustaría algo como

checkStatusOfProcess(&status); if(status == WORKING) { //do something } else if(status == exited) { //do something else } else //I dont care about other states


Creo que quieres waitpid con WNOHANG .

waitpid(pid, &status, WNOHANG);


Entonces desea usar la función waitpid con la opción WNOHANG :

#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 */ }