标题:关于fork()函数
只看楼主
liu4396
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-8-1
 问题点数:0 回复次数:2 
关于fork()函数
在fork() 的“返回值“的讨论过程中——父进程fork返回子进程的ID,而对于fork子进程返回0 ,这句话应怎么理解?

fork() 创建的不就是子进程吗? 怎么还会牵扯到 父进程上面


pid_t child;
child=fork();
在讨论child值得过程中,child是多少的问题,应怎么理解 ?
搜索更多相关主题的帖子: fork 函数 child 进程 pid 
2006-11-15 12:39
Dweng
Rank: 1
等 级:新手上路
帖 子:52
专家分:0
注 册:2006-10-31
得分:0 
这个应该这么理解:
因为父进程要等待子进程运行结束,所以要用到一些系统调用来实现等待的过程(wait(pid_t pid)),
所以对父进程来说需要知道子进程的PID,
而对自进程所返回的只是FORK()成功的标志,没有什么意义。
父子进程牵涉到进程的互斥和并发。

就喜欢钓鱼
2006-11-20 10:21
howema
Rank: 1
等 级:新手上路
帖 子:336
专家分:0
注 册:2005-10-4
得分:0 

一个父进程可能创建很多子进程,子进程成功返回给自己0,同时返回给父进程它(子进程)的ID,父进程可以通过wait等系统调用来等待子进程退出,然后做相应的处理,完成父子进程间的通信或同步。

2006-12-12 11:56



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-103125-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.248867 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved