0
该程序有很多叉如下没有完成。为什么我的许多叉子程序不停止?
#include <unistd.h>
#include <iostream>
int main() {
static int fork_cnt = 0;
const unsigned kCnt = 4;
for (int i = 0; i < kCnt; ++i) {
fork();
}
std::cout << "fork_cnt=" << fork_cnt << std::endl;
return 0;
}
当我跑了它,它停止如下。看来主叉完成了,但其他程序正在等待某些东西。
fork_cnt=0
[email protected]:~$ fork_cnt=0
fork_cnt=0
fork_cnt=0
fork_cnt=0
fork_cnt=0
fork_cnt=0
fork_cnt=0
fork_cnt=0
fork_cnt=0
fork_cnt=0
fork_cnt=0
...