一尘不染

Linux errno 23和Linux errno 24之间的区别

linux

  1. 这2个Linux错误之间有什么区别errno.h?23和24

我尝试了2个不同的站点,但无法理解两者之间的区别。


    [EMFILE]
Too many open files.
[ENFILE]
Too many files open in system.

    # define ENFILE      23  /* File table overflow */
# define EMFILE      24  /* Too many open files */

  1. 另外,我收到错误号24,套接字调用在974次失败。(AF_INETUDP数据报套接字)

当我执行a时,cat /proc/sys/fs/file-max我看到的值334076 ulimit -n显示1024

知道如何增加限制吗?


阅读 501

收藏
2020-06-03

共1个答案

一尘不染

对于1)两个错误代码都与打开的文件过多的情况有关。EMFILE在您的进程中打开了太多文件。ENFILE是在整个系统中打开的文件过多。

2020-06-03