MultiThread & Fonction bloquante [Résolu]

Messages postés
4
Date d'inscription
samedi 26 mars 2005
Dernière intervention
25 mai 2008
- 25 mai 2008 à 11:30 - Dernière réponse :
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
- 25 mai 2008 à 16:11
Bonjour ,
Dans le cadre de la réalisation d'un logiciel de supervision, je dois crée une application multi-clients. Pour gérer cela, chaque client possède donc une socket de communication associée à un Thread. Mon problème survient lorsque je souhaite quitter mon application : un Thread "tourne" toujours en arrière plan. Ce comportement est du, je pense, à la méthode "receiv" (méthode bloquante). Est-il possible de la débloquer n'importe quand afin de détruire le Thread associé ?

[Merci]
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
3489
Date d'inscription
lundi 16 octobre 2000
Dernière intervention
30 octobre 2008
25 mai 2008 à 15:14
3
Merci
Salut

Mets la propriété IsBackground de ton Thread a true

Mx
MVP C# 

Merci MorpionMx 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de MorpionMx
Meilleure réponse
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
25 mai 2008 à 16:11
3
Merci
Salut,

C'est dit dans la section remarques :
"A thread is either a background thread or a foreground thread. Background threads are identical to foreground threads, except that background threads do not prevent a process from terminating. Once all foreground threads belonging to a process have terminated, the common language runtime ends the process. Any remaining background threads are stopped and do not complete."

"Un thread est soit un thread d'arrière-plan, soit un thread de premier plan. Les threads d'arrière-plan sont identiques aux threads de premier plan, sauf qu'ils n'empêchent pas un processus de s'arrêter. Une fois que tous les threads de premier plan appartenant à un processus sont terminés, le Common Language Runtime met fin au processus. Tous les threads d'arrière-plan restants sont arrêtés et ne se terminent pas."

Après tu peux aussi opter pour arrêter les threads toi même, naturellement.

/*
coq
MVP Visual C#
CoqBlog
*/

Merci cs_coq 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de cs_coq
Messages postés
4
Date d'inscription
samedi 26 mars 2005
Dernière intervention
25 mai 2008
25 mai 2008 à 16:04
0
Merci
D'après MSDN, cette propriété permet de définir si le thread est un thread d'arrière plan ou non. Pourrais-tu m'expliquer pourquoi le fait de mettre le thread comme étant un thread d'arrière plan permettrai de résoudre mon problème... Je ne vois pas très bien la relation.

[Merci]
Commenter la réponse de ouaipdu53

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.