by Guest » 15 Jan 2025, 17:20
Der folgende Code gibt mir immer den Fehler
Code: Select all
OSError: [Errno 24] Too many open files
wenn 508 Prozesse ausgeführt werden, was bedeutet, dass jeder Prozess zwei Dateideskriptoren offen lässt, und dann erreiche ich das Systemlimit:
Code: Select all
from multiprocessing import Process
def do_job(task):
print("Task no " + str(task))
def main():
number_of_processes = 1000
processes = []
for i in range(number_of_processes):
p = Process(target=do_job, args=(i,))
processes.append(p)
# creating processes
for p in processes:
p.start()
p.join()
return True
if __name__ == "__main__":
main()
Wenn ich denselben Code auf dem vs-Code-Terminal versuche, wird er ohne Probleme abgeschlossen. Ich habe mir viele ähnliche Online-Threads angesehen, aber noch keine funktionierende Lösung gefunden.
Der folgende Code gibt mir immer den Fehler
[code]OSError: [Errno 24] Too many open files[/code]
wenn 508 Prozesse ausgeführt werden, was bedeutet, dass jeder Prozess zwei Dateideskriptoren offen lässt, und dann erreiche ich das Systemlimit:
[code]from multiprocessing import Process
def do_job(task):
print("Task no " + str(task))
def main():
number_of_processes = 1000
processes = []
for i in range(number_of_processes):
p = Process(target=do_job, args=(i,))
processes.append(p)
# creating processes
for p in processes:
p.start()
p.join()
return True
if __name__ == "__main__":
main()
[/code]
Wenn ich denselben Code auf dem vs-Code-Terminal versuche, wird er ohne Probleme abgeschlossen. Ich habe mir viele ähnliche Online-Threads angesehen, aber noch keine funktionierende Lösung gefunden.