Bonjour,
À chaque fois que j’avance un nouveau problème apparaît…
Après avoir résolu le nombre max de session ssh; je bloque au problème du trop grand nombre de threads lancés (une centaine)… Je pensais bêtement que la commande “mon_thread._Thread__stop()” suffisait pour les arrêter, mais apparemment ce n’est pas le cas… à partir d’une centaine lancé j’ai l’erreur suivante:
voilà une partie de mon code incriminé:
[code] def parler_tous(poste):
def callback():
connecter_ssh(poste)
with settings(warn_only=True):
run("cvlc {} & echo $! > PIDpt.txt)
self.tPt = threading.Thread(target=callback)
self.tPt.start()
def effacer_tous(poste):
connecter_ssh(poste)
with settings(warn_only=True):
run("kill $(cat PIDpt.txt)")
self.tPt._Thread__stop()
[/code]
Et comme je lance ça sur 10 postes en même temps… Au bout de la dixième fois ça coince…
J’ai vu ça sur Internet:
[quote] To fix it you will need increase stack size limit in the shell:
Initially it was:
$ ulimit -s
8192
[/quote]
déjà ça ne marche pas (le problème est identique) et en plus l’idée ne me plaît qu’à moitié… J’aimerais bien pouvoir arrêter mes threads plutôt que d’en créer à l’infini…
Pourquoi “self.tPt._Thread__stop()” ne marche pas?
Merci!