/* * Exemplo de uso de fork e waitpid. */ #include #include #include #include int main() { pid_t r_fork; printf("Processo pai. PID = %d\n", getpid()); if ((r_fork = fork()) != 0) { printf("Processo pai. PID do filho = %d\n", r_fork); while (waitpid(r_fork, NULL, WNOHANG)== 0) printf("Meu filho ainda não morreu\n"); printf("Meu filho morreu\n"); } else { sleep(1); /* Filho demora um pouco para executar. */ printf("Processo filho. PID = %d\n", getpid()); } return 0; }