Многопроцессорные процессы Python не запускаются

Aug 30 2020

Я новичок в многопроцессорности, но у меня проблемы даже с запуском процессов. Даже приведенный ниже фрагмент кода из документации python ничего не печатает

from multiprocessing import Process

def f(name):
    print('hello', name)

if __name__ == '__main__':
    p = Process(target=f, args=('bob',))
    p.start()
    p.join()

Я задавал этот аналогичный вопрос, и их решение не работает для меня.

Я запускаю python 3.8.2 на Jupyter Notebook

Ответы

1 zot8 Aug 30 2020 at 09:54

https://docs.python.org/3/library/multiprocessing.html

Функциональность в этом пакете требует, чтобы основной модуль мог импортировать дочерние элементы. Это описано в Руководстве по программированию, однако стоит указать здесь. Это означает, что некоторые примеры, такие как примеры multiprocessing.pool.Pool, не будут работать в интерактивном интерпретаторе.

Попробуйте выполнить его как скрипт .py через консоль.

1 HardyWu Dec 03 2020 at 07:49

Я использовал новейшую версию Anaconda 2020.11 для установки python Jupyter Notebook 6.1.4, JupterLab 2.26, Spyder 4.1.5 и т. Д., Все они не могут запускать функции Process (). Start (), вызываемые и не отображают ошибку.

Подсказка CMD.exe может без проблем запускать функции процессов в файлах .py.