我正在 Ubuntu 上工作。当我运行程序大约 1 小时后,我收到此错误:
GLib-ERROR **:无法创建管道主循环唤醒:打开的文件太多程序意外完成。
当我使用 gdb 运行时,它不会崩溃。
不明白为什么?以及此错误的原因是什么?
非常感谢..
最佳答案
Too many open files
非常明显。可能您的文件描述符存在泄漏,因此您应该检查您的代码是否打开了大量文件/文件描述符但没有正确关闭它们。如果您 fork 了一个进程,您还应该考虑在开始实际进程之前关闭它们,因为这也可能是一个常见的错误。
操作系统对它可以维护的文件描述符数量有一个限制表,显然您超出了这个限制。
关于qt - Qt 上的 "GLib-ERROR **: Cannot create pipe main loop wake-up: Too many open files",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17969804/