Je dois limiter la quantité de temps et de cpu pris par les applications de ligne de commande externes que je génère à partir d'un processus python utilisant subprocess.call, principalement parce que parfois le processus engendré est coincé et épingle le cpu à 99%. Nice et ulimit semblent être des moyens raisonnables de le faire, mais je ne sais pas comment ils interagiraient avec les sous-processus.Python: ulimit et sympa pour subprocess.call/subprocess.Popen?
- Les limites ressembler à quelque chose comme:
- tuer le processus si elle prend plus de 60 secondes
- limite à 20% de cpu
- Je veux appliquer la ressource limite au sous-processus, pas au processus python qui engendre les sous-processus.
Existe-t-il un moyen d'appliquer nice et ulimit au processus spawned subprocess.call? Y a-t-il de meilleures alternatives python-natives?
Ceci est sur un système Linux (Ubuntu).
Vous souhaiterez peut-être accepter la réponse la mieux votée au lieu de ma réponse. C'est beaucoup mieux que le mien. –