2010-01-20 8 views
6

Mögliche Duplizieren:
Multiprocessing launching too many instances of Python VMWarum Python Multiprocessing-Modul verursachen CPU vollständig ausgelaufen?

Ich versuche, Python 2.6 Multiprocessing-Modul mit diesem einfachen Code-Schnipsel.

Aber dieser Code verursacht mein Betriebssystem reagiert nicht mehr. Es sieht so aus, als ob die CPU zu beschäftigt ist. Was ist falsch an meinem Code?

BTW: es scheint, dass Multiprocessing-Modul ein bisschen gefährlich ist. Ich musste meinen Computer neu starten.

Antwort

7

Sie schützen den Eingangspunkt überhaupt nicht, daher versucht jeder Subprozess, denselben map Aufruf usw. zu starten (bis unendlich!). Versuchen Sie Folgendes:

if __name__ == "__main__": 
    print p.map(f, [1,2,3]) 

Siehe this section der Dokumentation des Moduls.

+0

@Trent: das ist nicht gut :) – jkp

+0

siehe dies: http://stackoverflow.com/questions/1923706/multiprocessing-launching-too-many-instances-of-python-vm –

Verwandte Themen