I processi multielaborazione Python non si avviano
Sono nuovo nel multiprocessing ma ho problemi anche ad avviare i processi. Anche lo snippet di codice riportato di seguito dalla documentazione di Python non stampa nulla
from multiprocessing import Process
def f(name):
print('hello', name)
if __name__ == '__main__':
p = Process(target=f, args=('bob',))
p.start()
p.join()
Ho affrontato questa domanda simile e la loro soluzione non funziona per me.
Sto eseguendo python 3.8.2 su Jupyter Notebook
Risposte
https://docs.python.org/3/library/multiprocessing.html
La funzionalità all'interno di questo pacchetto richiede che il modulo principale sia importabile dai bambini. Questo è trattato nelle Linee guida di programmazione, tuttavia vale la pena sottolinearlo qui. Ciò significa che alcuni esempi, come gli esempi multiprocessing.pool.Pool non funzioneranno nell'interprete interattivo.
Prova a eseguirlo come uno script .py tramite console.
Ho usato la versione più recente Anaconda 2020.11 per installare Python Jupyter Notebook 6.1.4, JupterLab 2.26 e Spyder 4.1.5 ecc., Non tutti possono eseguire Process (). Start () chiamate funzioni e non mostrano errori.
Il prompt CMD.exe può eseguire correttamente le funzioni di processo nei file .py.