@rodion-dev

Многопоточный скрипт на python, «filedescriptor out of range in select»?

есть скриптик на python, на многие потоки валится ошибка,
причем чем больше потоков тем больше количество сообщение о таких ошибках.
например на 1000 потоков их почти нету, а на 7000 потоках полно.

как пофиксить ?

Traceback (most recent call last):
.....
File "parser.py", line 100, in getContent
r, w, e = select.select([s], [], [], 5)
ValueError: filedescriptor out of range in select()
  • Вопрос задан
  • 804 просмотра
Пригласить эксперта
Ответы на вопрос 1
@asd111
используйте with или закрывайте файлы с помощью close() после того как всё прочли
Т.е. либо так
>>> with open('workfile.txt', 'r') as f:
...     read_data = f.read()
>>> f.closed
True

Либо так
f = open('file.txt', 'r')

try:
    # do stuff with f
finally:
    f.close()
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы