Exécuter un processus et de quitter sans attendre qu'il

En Python sous Windows: j'ai besoin d'exécuter du code dans un processus séparé. Et je ne veux pas que les parents en attente pour elle à la fin. Essayé ceci:

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()

qui commence le processus de l'enfant et continue l'exécution. Toutefois, lorsque le parent atteint la fin, il attend encore pour l'enfant à la sortie.

Est-il un moyen de laisser le parent quitter, même lorsque l'enfant est en cours d'exécution? Bien sûr, je pourrais juste de lancer une nouvelle interpréteur python à l'aide de subprocess.Popen et nourrir les moutons à compter comme un script séparé.

Encore, il y a ce module entier pour jouer avec des processus de code Python, donc j'aimerais en profiter au lieu de piratage sur le système d'exploitation. Aussi, ce serait génial si le même code fonctionné partout où Python n'a, pas seulement sur Windows.

Ici j'ai l'habitude de voir le problème inverse.

OriginalL'auteur Tomas Sedovic | 2009-11-11