الثلاثاء، 24 ديسمبر 2013

python multiprocess fails to start

Here is my code for a simple multiprocessing task in python

from multiprocessing import Processdef 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 listtask = [Process(target = myfunc, args = (i,)) for i in a] ## creating processesfor each in task : each.start() # starting processes <------ problem linefor each in task : each.join() # waiting all to finish up

When I run this code, it hangs at certain point, so to identify it I ran it line by line in python shell and found that when I call 'each.start()' The shell pops out a dialogue box as:

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

and I select 'yes' the shell closes.

When I replace Process with 'threading.Thread' the same code runs but with this nonsense output:

Squared Squared Squared Squared Squared 0 149162536496481

Is there any help in this regard ? thank in advance


View the original article here

ليست هناك تعليقات:

إرسال تعليق