#include#include#include#include#include#includeintmain(){pid_t child_pid;int status;
child_pid =fork();if(child_pid ==0){// Child processprintf("Child process executing...\n");sleep(2);// Simulate some workexit(0);}elseif(child_pid >0){// Parent processprintf("Parent process executing...\n");// Non-blocking wait for child processwhile(waitpid(child_pid,&status, WNOHANG)==0){printf("子进程存活\n");sleep(1);}if(WIFEXITED(status)){printf("Child process exited with status: %d\n",WEXITSTATUS(status));}else{printf("Child process did not exit normally.\n");}}else{// Fork failedprintf("Fork failed.\n");return1;}return0;}