int main(void) { pid_t pid; TELL_WAIT(); if ((pid = fork()) < 0) { err_sys("fork error"); } else if (pid == 0) { charactatime("output from child\n"); TELL_PARENT(getppid()); /* child goes first */ } else { WAIT_CHILD(); charactatime("output from parent\n"); } exit(0); }
int main(void) { pid_t pid; TELL_WAIT(); if((pid = fork()) < 0) err_sys("fork error"); else if (pid == 0) { WAIT_PARENT(); /* parent goes first */ charactatime("output from child\n"); TELL_PARENT(getppid()); } else { charactatime("output from parent\n"); TELL_CHILD(pid); WAIT_CHILD(); } return 0; }