Ich habe den folgenden Code
%Vor%Wenn ich
hinzufüge %Vor% Am Ende verwenden Sie python script_name.py
, um es auszuführen, alles funktioniert gut. Wenn ich jedoch nur den Befehl " python -i script_name.py
" ausführen lasse, führe main()
aus. Python beschwert sich:
Der Fehler kommt vom Kindprozess, der Hauptprozess läuft gut.
Das ist keine große Sache, aber ich frage mich, warum das passiert, auch wäre es schön, wenn es im interaktiven Modus funktioniert
Die Multiprocessing-Dokumentation erläutert dies:
Hinweis
Funktionalität in diesem Paket erfordert, dass das __main__ Modul sein muss von den Kindern importierbar. Dies ist in den Programmierrichtlinien enthalten Es lohnt sich jedoch, darauf hinzuweisen. Dies bedeutet, dass einige Beispiele, wie die multiprocessing.Pool Beispiele funktionieren nicht in der interaktiver Dolmetscher.
Nach meinem Verständnis ist __main__
im Kontext einer interaktiven Sitzung sehr unterschiedlich definiert (da es der Shell und nicht der laufenden Datei zugeordnet ist).
Tags und Links python multiprocessing