Untitled
unknown
plain_text
10 months ago
979 B
3
Indexable
#include <stdlib.h> #include <stdio.h> #include <sys/wait.h> #include <sys/types.h> #include <unistd.h> int main(int argc, char *argv[]) { int status; pid_t p0 = getpid(), p1 = fork(); if (p1 != 0) { pid_t p2 = fork(); if (p2 != 0) { waitpid(p2, &status, 0); waitpid(p1, &status, 0); printf("p1\n"); exit(0); } pid_t p3 = fork(); if (p3 == 0) { printf("p3 "); exit(0); } waitpid(p3, &status, 0); printf("p2 "); exit(0); } sleep(2); if (p1 == 0) { pid_t p5 = fork(); if (p5 == 0) { printf("p6 "); exit(0); } waitpid(p5, &status, 0); pid_t p4 = fork(); if (p4 == 0) { printf("p5 "); exit(0); } waitpid(p4, &status, 0); waitpid(p0, &status, 0); printf("p4 "); exit(0); } }
Editor is loading...
Leave a Comment