程序if(fork() ==

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/11 04:54:56

程序if(fork() ==
程序if(fork() ==

程序if(fork() ==
linux下C语言可以用fork()建立子进程.
fork函数返回两个值,对于子进程,返回0; 父进程,返回子进程ID. 所以用
if(fork()==0)
{子进程执行的代码段;}
else
{父进程执行的代码段;}

fork()函数的作用:新建一个子进程。
可以这么看,fork的意思就是分支,所以就相当于在当前进程所运行到的位置分一个支流出来,然后,新进程与老进程都是从分叉点开始继续运行(分叉点也就是fork()函数调用处)。
至于fork()函数的返回值:
子进程返回:0
父进程返回:>0的整数(返回子进程ID号)
错误返回:-1
因此,若没有错误,对于:

全部展开

fork()函数的作用:新建一个子进程。
可以这么看,fork的意思就是分支,所以就相当于在当前进程所运行到的位置分一个支流出来,然后,新进程与老进程都是从分叉点开始继续运行(分叉点也就是fork()函数调用处)。
至于fork()函数的返回值:
子进程返回:0
父进程返回:>0的整数(返回子进程ID号)
错误返回:-1
因此,若没有错误,对于:
if(fork()==0)
{block A}
else
{block B}
在新进程中block A的内容会被执行,而在老进程中block B会被执行。

收起