-
thread en java
Bonjour,
j'utilise plusieurs thread en parallèle
mes threads sont soit dans l'état réveillé (du travail) soit il est en repos (en attente : wait())
mon problème est Comment réveiller un seul thread bien precis
car je fais notify() un thread va être réveiller aléatoirement
Merci
-
Salut,
personnellement je m'inspire d'un post d'adiGuba quand j'ai un problème avec les threads : celui-là.
Après je suis pas un spécialiste des threads mais ça devrait déjà t'aider
Cdt,
-
En fait ton problème est étrange pourquoi vouloir réveiller un thread plutôt qu'un autre (Si je comprends bien plusieurs threads attendent sur la même condition)?
Sinon si tu veux pouvoir communiquer avec un thread en particulier tu peux lui assigner une queue particulière ou alors un lock que lui seul utilise.
Mais peut-être qu'une description plus précise de ton problème ou alors un petit peu de code m'aiderait à comprendre.
-
la meilleur solution à mon avis c'est d'utiliser les Semaphores classique. je ne sais pas ce que tu veux faire mais si tu assigne à chaque thread un semaphore privé tu pourra choisir exactement le Thread que tu veux reveiller.
-
c'est tout simple, il suffit d'utiliser des objets différents pour chaque thread pour faire des appels wait/notify dessus.