fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <sys/types.h>
  4. #include <unistd.h>
  5.  
  6. int main()
  7. {
  8. int pid1, pid2, pid3;
  9. pid1 = fork();
  10. pid2 = fork();
  11. pid3 = fork();
  12.  
  13. if((pid1==0) || (pid2==0) || (pid3==0)){
  14. printf("Sono il processo figlio con pid: %d", getpid());
  15. printf("il mio papi ha pid: %d \n", getppid());
  16. sleep(1);
  17. exit(1);
  18. }
  19. else{
  20. printf("Sono il processo padre con pid: %d. \n", getpid());
  21. sleep(2);
  22. }
  23.  
  24. return 0;
  25. }
  26.  
Success #stdin #stdout 0s 5288KB
stdin
Standard input is empty
stdout
Sono il processo figlio con pid: 4156189il mio papi ha pid: 4156184 
Sono il processo figlio con pid: 4156188il mio papi ha pid: 4156184 
Sono il processo figlio con pid: 4156187il mio papi ha pid: 4156184 
Sono il processo figlio con pid: 4156190il mio papi ha pid: 4156188 
Sono il processo figlio con pid: 4156192il mio papi ha pid: 4156187 
Sono il processo figlio con pid: 4156191il mio papi ha pid: 4156187 
Sono il processo figlio con pid: 4156193il mio papi ha pid: 4156191 
Sono il processo padre con pid: 4156184.