Je travaille avec un système de cluster sur Linux (www.mosix.org) qui me permet d'exécuter des tâches et de faire en sorte que le système les exécute sur différents ordinateurs. Les emplois sont fonctionnent comme ceci:Comment dire l'ID de processus dans Python
mosrun ls &
Cela va créer naturellement le processus et l'exécuter sur l'arrière-plan, retourner l'identifiant du processus, comme ceci:
[1] 29199
Plus tard, il sera de retour. J'écris une infrastructure Python qui exécuterait des tâches et les contrôlerait. Pour cela, je veux exécuter des tâches en utilisant le programme mosrun comme ci-dessus, et enregistrer l'ID du processus engendré (29199 dans ce cas). Cela ne peut naturellement pas être fait en utilisant os.system ou commands.getoutput, car l'ID imprimé n'est pas ce que le processus imprime pour sortir ... Des indices?
Modifier:
Depuis le script python est destiné uniquement pour exécuter d'abord le script, les scripts doivent durer plus longtemps que le shell python. Je suppose que cela signifie que le processus mosrun ne peut pas être le processus enfant du script. Aucune suggestion?
Merci
Normalement, les processus enfants continuent de s'exécuter lorsque le processus parent est en cours de fonctionnement. –