Python - об ограничениях дескрипторов файлов в ОС - PullRequest
4 голосов
/ 24 июля 2009

Привет, я написал программу на python, и когда я открываю слишком много временных файлов, я получаю исключение: слишком много открытых файлов ... Затем я выясняю, что во время выполнения Windows OS или C есть ограничения на дескриптор файла, поэтомуя изменяю свою программу, используя StringIO (), но все еще не знаю, ограничен ли StringIO ??

1 Ответ

7 голосов
/ 24 июля 2009

Python StringIO не использует дескрипторы файлов ОС, поэтому он не будет ограничен таким же образом. StringIO будет ограничен доступной виртуальной памятью, но у вас, вероятно, есть куча доступной памяти.

Обычно ОС позволяет одному процессу открывать тысячи файлов перед запуском в ограничение, поэтому, если ваша программа работаетиз-за файловых дескрипторов вы можете забыть закрыть их. Если, конечно, вы не собираетесь открывать тысячи файлов и на самом деле просто закончились.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...