Тихо пізно, але це повинно допомогти всім іншим отримати відповідь на це питання. Практичний ліміт кількості відкритих файлів у Linux також може бути підрахований, використовуючи максимальну кількість дескрипторів файлів, які процес може відкрити.
Я бачив, як обмеження змінюються від системи до системи. На сторінці getlimit man ви бачите, що RLIMIT_NOFILE-1
визначає обмеження всередині країни.
Щоб перевірити значення RLIMIT_NOFILE, ви можете скористатися наведеним нижче елементом, щоб отримати кортеж
python -c "import resource; print(resource.getrlimit(resource.RLIMIT_NOFILE))"
Кортеж повертає результати як (Soflimit, hardlimit). Для мене результати роботи в декількох системах результати наведені нижче
(1024, 1048576) # on UBUNTU linux
(65536, 65536) # on amazon linux
(1024, 9223372036854775807) # on macos
Примітка: 9223372036854775807 це число просто означає нескінченність. Ви завжди будете досягати інших обмежень ресурсів, перш ніж коли-небудь потрапити на це. Якщо ви змінили жорсткий ліміт у системі, що перевищує його, вам доведеться змінити параметри ядра.