Suppression du sous-processus créé avec shell=True
transmis à subprocess.Popen
Le constructeur de l'interpréteur de commandes sous Linux tue uniquement l'interpréteur de commandes et non le processus créé par l'interpréteur de commandes (cf. Comment terminer un sous-processus python lancé avec shell=True ). Toutefois, python -c "import subprocess; subprocess.Popen(['ping', '-t', 'google.com'], shell=True).terminate()"
fonctionne sous Windows Vista x64 SP3 et Python 2.7.3 64bit tue la ping
processus. Sous Windows subprocess.Popen.terminate()
appelle TerminateProcess
. Cependant documentation de cette fonction indique
Termine le processus spécifié et tous ses threads.
Il n'y a aucune mention de la fin de l'arbre de processus entier. Qu'est-ce que j'ai manqué ?