Skip to content Skip to sidebar Skip to footer

Multiprocessing Don't Start

i just started learning about multiprocessing module today and i was trying this code but it didn't work and i don't know why it doesn't give me any error or any thing it just end

Solution 1:

Umm, you can still use start and join

import multiprocessing
def x ():
    print ("hi")
example=multiprocessing.Process(target=x)
example.start() # START
example.join() # JOIN

Running in the python repl, I get,

>>>import multiprocessing>>>defx ():...print ("hi")...>>>example=multiprocessing.Process(target=x)>>>example.start(); example.join()
hi
>>>

The only reason the second example seems to work is because you are calling x (notice target=x() vs target=x).

Your first example works but without join, the program is terminated after main is finished (but before the child process is finished). This creates a zombie process and possibly prevents it from doing more work, like printing hi to standard output

Post a Comment for "Multiprocessing Don't Start"