Мой питон сумы вызывает внешнюю команду, чтобы построить проект OCaml, но я бегу в эту проблему слишком много файлов открытоPython подпроцессов POPEN [Errno 24] Слишком много открытых файлов
try:
handle = subprocess.Popen(['ocamlc', file_i], \
stdout=subprocess.PIPE, \
stderr=devnull, \
cwd=dir_o, \
close_fds=True
)
except Exception as e:
handle = e
print(e)
file_i является входным генерироваться по
for file in os.listdir(dir_i):
и devnull от
devnull = open(os.devnull, 'w')
Когда я печатаю ошибку было бы Дис игры
[Errno 24] Too many open files
У меня нет файлов, открытых кроме devnull. Поэтому я смущен, почему я получаю это исключение.
Update
104 # process_count += 1
105 # if process_count == MAX_PROCESS:
107 # for p in processes:
108 # if p != Exception:
109 # p.wait()
110 # process_count = 0
111 # p = []
'p! = Исключение' должно быть' not isinstance (p, Exception) '. –