【发布时间】:2010-04-11 14:09:52
【问题描述】:
你好
我正在编写应该调度其他一些子进程的服务器的一部分。
因为我想在某些进程上等待,而在不等待完成的情况下调度其他进程,所以我对第二种进程使用双叉(从而避免僵尸进程)。
问题是,我的服务器拥有大量内存,因此分叉需要很长时间(即使是 Linux 中使用的写时复制分叉,它只复制分页表)
我想用 vfork() 替换 fork(),第二个 fork 很容易(因为它只在孩子中调用 execve()),但我找不到任何方法可以替换第一个。
有谁知道我该怎么做?
谢谢!
服务器是linux(RH5U4),用C++编写。
【问题讨论】: