linux进程创建
/****fork_test.c *****/ #include<stdio.h> #include<sys/types.h> #include<unistd.h> main() { pid_t pid; /*此时仅有一个进程*/ int n=4; pid=fork(); /*此时已经有两个进程在同时运行*/ if(pid<0) printf("error in fork!\n"); else if(pid==0) /*返回0表示子进程*/ { n++; printf("I am the child process, my process ID is %d,n=%d\n",getpid(),n); } else /*返回大于0表示父进程*/ { n--; printf("I am the parent process, my process ID is %d,n=%d\n",getpid(),n); } }
语句“pid=fork()”,产生了两个进程,原来存在的父进程,新出现的子进程。
父子进程的区别除了PID不同fork函数的返回值也不相同。在父进程中,返回子进程Pid,子进程则返回0;
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。