Je travaillais sur l'exemple suivant du tutoriel de Doug Hellmann sur le multitraitement:
import multiprocessing
def worker():
"""worker function"""
print 'Worker'
return
if __name__ == '__main__':
jobs = []
for i in range(5):
p = multiprocessing.Process(target=worker)
jobs.append(p)
p.start()
Lorsque j'ai essayé de l'exécuter en dehors de l'instruction if:
import multiprocessing
def worker():
"""worker function"""
print 'Worker'
return
jobs = []
for i in range(5):
p = multiprocessing.Process(target=worker)
jobs.append(p)
p.start()
Les processus de frai ont commencé sans interruption, et le seul moyen de l’arrêter était de redémarrer!
Pourquoi cela arriverait-il? Pourquoi ne pas générer 5 processus et sortir? Pourquoi ai-je besoin de la déclaration if?