Я пытаюсь настроить самый простой пример multiprocessing
ниже. Однако выполнение только печатает here
и <_MainProcess(MainProcess, started)>
и pool.apply()
даже никогда не вызывает функцию cube()
. Вместо этого выполнение просто продолжается бесконечно без остановки.
import multiprocessing as mp
def cube(x):
print('in function')
return x**3
if __name__ == '__main__':
pool = mp.Pool(processes=4)
print('here')
print(mp.current_process())
results = [pool.apply(cube, args=(x,)) for x in range(1,7)]
print('now here')
pool.close()
pool.join()
print(results)
Я пробовал различные другие базовые примеры, включая pool.map()
, но продолжаю сталкиваться с той же проблемой. Я использую Python 3.7 на Windows 10. Поскольку у меня нет идей, кто-нибудь знает, что здесь не так или как я могу отладить это дальше?
Спасибо!