Retourner au contenu associé (entrée de forum : Detecter la fin d'un Thread)
Posté par eriser (site web personnel) le 02 février 2008 à 14:00. En réponse au message Detecter la fin d'un Thread. Évalué à 2.
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
# RE: Detecter la fin d'un Thread
Posté par eriser (site web personnel) . En réponse au message Detecter la fin d'un Thread. Évalué à 2.
un exemple de code ça parle plus :-)
import threading
import time
class Client(threading.Thread):
....def __init__(self, event):
........threading.Thread.__init__(self)
........self.event = event
....def run(self):
........print "test"
........time.sleep(1)
........print "finished"
........self.event.set()
class Server(threading.Thread):
....def __init__(self):
........threading.Thread.__init__(self)
........self.clients = []
....def run(self):
........print "server started"
........for i in range(0,10):
............e = threading.Event()
............c = Client(e)
............self.clients.append(c)
............c.start()
........while 1:
............terminatedClient = []
............if len(self.clients) == 0:
................return
............for x in self.clients:
................if x.event.isSet():
....................terminatedClient.append(x)
............for x in terminatedClient:
................self.clients.remove(x)
if __name__ == "__main__":
....server = Server()
....server.start()