Aide: Executer une tache indefiniment pendant un temps donné.

jpkuja Messages postés 3 Date d'inscription mardi 14 novembre 2000 Statut Membre Dernière intervention 11 mai 2006 - 30 avril 2005 à 12:40
jpkuja Messages postés 3 Date d'inscription mardi 14 novembre 2000 Statut Membre Dernière intervention 11 mai 2006 - 30 avril 2005 à 15:23
J ai créé un serveur multi-client, a chaque client est associé un thread pour qu il puisse communiquer avec le serveur. Aucun probleme jusque la . Maintenant, j ai créé un thread en plus qui envoie a tous mes clients un temps, et j aimerais que mes clients, en recuperant ce temps executent une tache indefiniment pendant le temps envoyé par le thread.

Je ne peux pas utliser Thread.sleep(int ms) car cela bloque mes clients a chaque fois pendant un nombre de secondes donné.

Pour ce qui est de timer, je ne connais pas tres bien son fonctionnement mais d apres ce que j ai vu, il faut le demarrer avec la methode start() et l arreter avec la methode stop(). Je ne vois pas comment gerer cela dans le client.

Si vous avez des idées, elles sont les bienvenues, merci.

1 réponse

jpkuja Messages postés 3 Date d'inscription mardi 14 novembre 2000 Statut Membre Dernière intervention 11 mai 2006
30 avril 2005 à 15:23
Je pense avoir trouvé ma solution:

Lorsque mon client recoit le temps, il demarre un thread qui effectue une tache (tache bloquante ou non), et dans mon client je demarre un timer. Une fois le temps ecoulé, je stope mon thread qui effectuait la tache, tout simplement.

Je suis ouvert a d autres solutions.
0
Rejoignez-nous