У меня есть простой Python скрипт, который запускает параллельный пул:
import multiprocessing as mp
def square(x):
return x**2
if __name__ == '__main__':
pool = mp.Pool(4)
results=pool.map(square,range(1,20))
Он работает нормально и, как и ожидалось. Однако, если я импортирую какой-либо простой пользовательский класс, такой как приведенный ниже код, он больше не работает. Я запускаю выполнение сценария, но сценарий не прекращается. Это странно, поскольку я не использую импортированный класс.
import multiprocessing as mp
from Person import Person
def square(x):
return x**2
if __name__ == '__main__':
pool = mp.Pool(4)
results=pool.map(square,range(1,20))
Класс Person очень прост:
class Person:
def __init__(self, id):
self.id = id
В чем причина этого поведение и как я могу это исправить?
РЕДАКТИРОВАТЬ: я использую Windows 10