In Python under Windows: I want to run some code in a separate process. And I don't want the parent waiting for it to end. Tried this:
from multiprocessing import Process
from time import sleep
def count_sheeps(number):
"""Count all them sheeps."""
for sheep in range(number):
sleep(1)
if __name__ == "__main__":
p = Process(target=count_sheeps, args=(5,))
p.start()
print("Let's just forget about it and quit here and now.")
exit()
which starts the child process and continues executing. However, when the parent reaches the end, it still waits for the child to exit.
Is there a way of letting the parent quit even when the child is running? Sure, I could just run a new python interpreter using subprocess.Popen
and feed to it the sheep-counting as a separate script.
Still, there's this whole module for playing with processes of Python code, so I'd like to take advantage of that instead of hacking on the OS. Also, it would be awesome if the same code worked everywhere where Python does, not just on Windows.