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