我正在研究Ubuntu。当我在1小时后运行我的程序时,我收到了这个错误:
GLib-ERROR **:无法创建管道主循环唤醒:打开的文件太多程序意外完成。
当我使用gdb运行时,它不会崩溃。
我不明白为什么?这个错误的原因是什么?
非常感谢..
答案 0 :(得分:2)
打开的文件太多
非常明显。 Probalby你有文件描述符泄漏,所以你应该检查你的代码是否打开了很多文件/文件描述符,但是没有正确关闭它们。如果你分叉一个进程,你也应该考虑在开始实际进程之前关闭它们,因为这也可能是一个常见的错误。
操作系统有一个限制表,表明它可以维护多少个文件传感器,显然你已经超过了这个限制。