Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void forkexample() {
- pid_t *pids = malloc(10 * sizeof(pid_t));
- for (int i = 0; i < 10; i++) {
- pid_t pid = fork();
- if (pid < 0) {
- return;
- } else if (pid > 0) {
- pids[i] = pid;
- } else {
- printf("elo1 %d \n", getpid());
- sleep(i);
- printf("elo2 %d \n", getpid());
- exit(1);
- }
- }
- for (int i = 0 ; i < 10 ; i++) {
- int status;
- waitpid(pids[i], &status, 0);
- printf("status: %d \n", WEXITSTATUS(status));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement