Python-Multiverarbeitungsprozesse werden nicht gestartet
Ich bin neu in der Mehrfachverarbeitung, habe aber Probleme, die Prozesse überhaupt zu starten. Selbst das folgende Codefragment aus der Python-Dokumentation druckt nichts
from multiprocessing import Process
def f(name):
print('hello', name)
if __name__ == '__main__':
p = Process(target=f, args=('bob',))
p.start()
p.join()
Ich habe diese ähnliche Frage durchgearbeitet und ihre Lösung funktioniert bei mir nicht.
Ich verwende Python 3.8.2 auf Jupyter Notebook
Antworten
https://docs.python.org/3/library/multiprocessing.html
Funktionalität innerhalb dieses Pakets erfordert , dass das Hauptmodul von den Kindern importierbar sein. Dies wird in den Programmierrichtlinien behandelt, es ist jedoch erwähnenswert, hier darauf hinzuweisen. Dies bedeutet, dass einige Beispiele, wie z. B. die Beispiele multiprocessing.pool.Pool, im interaktiven Interpreter nicht funktionieren.
Versuchen Sie, es als .py-Skript über die Konsole auszuführen.
Ich habe die neueste Version von Anaconda 2020.11 verwendet, um Python Jupyter Notebook 6.1.4, JupterLab 2.26 und Spyder 4.1.5 usw. zu installieren. Alle können Process (). Start () aufgerufene Funktionen nicht ausführen und zeigen keinen Fehler an.
Die Eingabeaufforderung CMD.exe kann Prozessfunktionen in .py-Dateien problemlos ausführen.