Sortie de boucle inexpliquée
Résolu
Char Snipeur
Messages postés
9813
Date d'inscription
Statut
Contributeur
Dernière intervention
-
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'ai un certain nombre de calculs/taches à effectuer, et je ne voudrais pas en lancer plus d'un certain nombre de manière simultanée. Je fait donc une liste de thread que je remplis et vide au fur et à mesure. Mes tests sont stockés dans la liste "castests"
donc normalement, je ne devrais pas avoir plus de num_proc thread en simultané, je crée un nouveau thread dès qu'un est mort.
Seulement, ça ne fonctionne pas, je ne sais pas pourquoi, le while n'est pas pris en compte, tout les thread sont créé et lancer en même temps.
j'ai un certain nombre de calculs/taches à effectuer, et je ne voudrais pas en lancer plus d'un certain nombre de manière simultanée. Je fait donc une liste de thread que je remplis et vide au fur et à mesure. Mes tests sont stockés dans la liste "castests"
for castest in castests : while len(threads)>=num_proc: sleep(10) for thread in threads: if not thread.isAlive(): threads.remove(thread) thread=thread_depuis(castest) threads.append(thread) thread.start()
donc normalement, je ne devrais pas avoir plus de num_proc thread en simultané, je crée un nouveau thread dès qu'un est mort.
Seulement, ça ne fonctionne pas, je ne sais pas pourquoi, le while n'est pas pris en compte, tout les thread sont créé et lancer en même temps.
A voir également:
- Sortie de boucle inexpliquée
- Airpods 3 date de sortie - Guide
- Remettre un pc en sortie d'usine - Guide
- Office 2024 date de sortie - Accueil - Bureautique
- Samsung a33 date de sortie - Guide
- Iphone 14 date de sortie - Guide
2 réponses
La condition while len(threads)>=num_proc: ne serait-elle pas inversée ?
ça serait pas plutôt while len(threads)<=num_proc ?
ça serait pas plutôt while len(threads)<=num_proc ?