Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 民意调查正在导致崩溃_Linux_Multithreading_Linux Kernel_Polling - Fatal编程技术网

Linux 民意调查正在导致崩溃

Linux 民意调查正在导致崩溃,linux,multithreading,linux-kernel,polling,Linux,Multithreading,Linux Kernel,Polling,我得到一个具有以下值的崩溃:- Poll是正在使用的系统调用 将“errno”设为24(EMFILE) 结构pollfd的值为“fd=1022,events=1,revents=32” 这里我们正在研究“fd=1022”,那么为什么它将“errno”显示为24(EMFILE/打开的文件太多/) 我有多个线程在无限循环中工作。在我的机器上,ulimit-a显示1024个最大打开文件。1022非常接近这个极限 您是否有试图打开文件但失败的代码?可能是其他系统调用将errno设置为EMFILE 确保您

我得到一个具有以下值的崩溃:-

Poll是正在使用的系统调用 将“errno”设为24(EMFILE) 结构pollfd的值为“fd=1022,events=1,revents=32”

这里我们正在研究“fd=1022”,那么为什么它将“errno”显示为24(EMFILE/打开的文件太多/)


我有多个线程在无限循环中工作。

在我的机器上,
ulimit-a
显示1024个最大打开文件。1022非常接近这个极限

您是否有试图打开文件但失败的代码?可能是其他系统调用将errno设置为EMFILE

确保您正在处理来自打开fds的代码的返回值

确保您没有在某处泄漏文件描述符

如果此代码以适当的权限运行,则可以尝试使用
ulimit-n
setrlimit()
增加最大打开文件限制