fork用于创建从其调用的流程的副本。
通常,此后是对exec函数家族的调用。
除此以外,还有叉的用法吗?
我能想到一个。使用管道功能进行IPC。
最佳答案
是的当然。开始一个过程,进行一些数据初始化,然后产生多个工作程序是很常见的。它们在地址空间中都有相同的数据,即写时复制。
另一个常见的事情是让主进程为传入的每个连接监听TCP套接字和fork()。这样,在并行处理现有连接的同时,可以立即处理新连接。
我认为您忘记了在fork()之后,两个进程都可以访问fork()之前进程中存在的所有数据。
关于unix - fork系统调用的应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1345320/