本篇文章还是beta版,由于本人对这个函数的了解还不是非常清晰,暂时只知道返回值有两个,返回两次.一个是,表示创建的子进程,一个是创建的子进程的id.如果返回-1表示创建失败,下面就不考虑了.下面的函数是测试用代码.

代码如下:

#include
#include
#include

int main(void)
{
int p;
printf(“main——\n);
p = fork();//调用fork函数
printf(“after-fork*\n);
if(0 == p)
{
printf(“child %d—–ppid->%d\n,getpid(),getppid());
}
else
{
printf(“parent %d—\n,getpid());
}
printf(“over—*\n);
return 0
}

结果如下:

main——

after-fork*

child 2579—–ppid->2578

over—*

after-fork*

parent 2578—

over—*

上述结果说明一些事情:首先是前面我说的.还有就是fork函数后面的都会被子进程和父进程都执行.还有一个是说这两个是并行的,也就是说可能先执行父进程再进行子进程,不过暂时结果没见过.等进一步了解之后,再来更新本篇文章.

Comments

2010-12-30