Linux 文件描述符的“值”是否总是小于打开文件限制?
理论上,系统应重新使用已关闭文件描述符的标识值。在一个进程中打开 1021 个文件后,默认情况下,我应该得到范围从 0、1、2 到 1023 的文件描述符值。如果我想打开另一个文件,我必须释放一些文件描述符close
,当我再次调用时系统会重新使用这些释放的身份open
。所以在这种情况下,文件描述符的最大整数值应该是 1023。那是对的吗 ?
我知道我可以使用 、 和 更改打开文件ulimit -n
的setrlimit
限制/proc/sys/fs/file-max
。我只想知道是否可以使用char
变量存储打开的套接字文件描述符,如果我已将打开文件限制减少到 128个setrlimit
。