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

Вот мой код для простой многопроцессорной задачи в Python

from multiprocessing import Process

def myfunc(num):

    tmp = num * num
    print 'squared O/P will be ', tmp
    return(tmp)


a = [ i**3 for i in range(5)] ## just defining a list

task = [Process(target = myfunc, args = (i,)) for i in a]  ## creating processes

for each in task : each.start()  # starting processes <------ problem line

for each in task : each.join()   # waiting all to finish up

Когда я запускаю этот код, он в какой-то момент зависает, поэтому для его идентификации я запускаю его построчно в оболочке python и обнаруживаю, что когда я вызываю 'each.start ()', оболочка выдает диалоговое окно в виде:

" The program is still running , do you want to kill it? '

и я выбираю «да», оболочка закрывается.

Когда я заменяю Process на 'threading.Thread', запускается тот же код, но с таким бессмысленным выводом:

Squared Squared Squared Squared Squared  0    1491625
36496481

Есть ли помощь в этом отношении? заранее спасибо

Для запуска своих кодов Python я использую Idlex IDE и запускаю его из терминала.

У меня есть процессор Intel Xeon с 4 ядрами / 8 потоков и 8 ГБ оперативной памяти

Ответы на вопрос(2)

Ваш ответ на вопрос