我有一个多线程的应用程序-一个线程负责用wait()收集死掉的孩子,另一个线程根据请求用fork产生它们。
我发现在带有2.4内核和LinuxThread的平台上,等待总是失败,并出现ECHILD。我发现这个问题可能存在于2.4内核上不符合POSIX的LinuxThreads实现中,而following discussion建议没有办法解决这个问题。
尽管如此,我仍然希望确保没有人知道任何解决方案。即使是内核的补丁也是可以接受的。
当我考虑应用程序设计时,我认为不可能在单个线程中同时完成fork()和wait() (或者只需要付出巨大的努力)
发布于 2009-06-23 16:41:47
如果你开始考虑内核补丁,那么是时候考虑升级了。2.4在牙齿里是很长的。
https://stackoverflow.com/questions/1033585
复制相似问题