1 #include<stdio.h>
2 #include <unistd.h>
3
4 int main()
5 {
6 // pid_t getpid(void);
7 printf("before fork pid is %d\n",getpid());
8 // pid_t fork(void);
9 pid_t pid;
10 pid = fork();
11 printf("after fork pid is %d\n",getpid());
12
13 if(pid == 0 ){
14 printf("This is child process and pid is %d\n",getpid());
15 }else if(pid > 0){
16 printf("This is father process and pid is %d\n",getpid());
17 }
18
19 return 0;
20 }
~
应用:
1 #include<stdio.h>
2 #include <unistd.h>
3
4 int main()
5 {
6 // pid_t getpid(void);
7 printf("before fork pid is %d\n",getpid());
8 // pid_t fork(void);
9 pid_t pid;
10 // pid = fork();
11 int num;
12 while(1){
13 printf("please input num\n");
14 scanf("%d",&num);
15 if(num == 1){
16 pid = fork();
17 if(pid == 0 ){
18 while(1){
19 printf("welcome to my home and pid is %d\n",getpid());
20 sleep(2);
21 }
22 }else if(pid > 0){
23
24 }
25
26 }
27 printf("wait,do nothing\n");
28 }
29 return 0;
30 }