Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Arrêt d'un thread contenant un scoket bloquant.

2 réponses
Avatar
Pierrot
Bonjour,
J'ai développé une form qui lance un thread serveur de type socket UDP.
Ce thread est à l'écoute de message et met à jour ma form dès qu'il
reçoit un message.
Quand je souhaite fermer ma forme je n'arrive pas à arrêter ce thread en
utilsant la méthode abort().
Mon application est elle bien stoppée (Application.Exit();) Dès que le
thread reçoit un nouveau message, il tombe en erreur car il essaie de
mettre à jour la forme qui n'est plus référencée.

Il y a-il une subtilité au niveau des threads bloquants.

Merci pour vos conseils.
Pierre.

2 réponses

Avatar
Gilles Kohl [MVP]
On Mon, 12 May 2008 12:11:26 +0200, Pierrot
wrote:

Bonjour,
J'ai développé une form qui lance un thread serveur de type socket UDP.
Ce thread est à l'écoute de message et met à jour ma form dès qu'il
reçoit un message.
Quand je souhaite fermer ma forme je n'arrive pas à arrêter ce thread en
utilsant la méthode abort().
Mon application est elle bien stoppée (Application.Exit();) Dès que le
thread reçoit un nouveau message, il tombe en erreur car il essaie de
mettre à jour la forme qui n'est plus référencée.

Il y a-il une subtilité au niveau des threads bloquants.

Merci pour vos conseils.
Pierre.



Essayez si la mise à "true" de la propriété IsBackground du thread qui
ne veut pas terminer change les choses. La propriété "IsDisposed" the
votre forme pourrait aussi être utilisée - avant de l'accéder - pour
déterminer si la forme est toujours "en vie".

Amicalement,
Gilles.

Regards,
Gilles [MVP].

(Please reply to the group, not via email.
Find my MVP profile with past articles / downloads here:
http://www.gilleskohl.de/mvpprofile.htm)
Avatar
Pierrot
Gilles Kohl [MVP] a écrit :
On Mon, 12 May 2008 12:11:26 +0200, Pierrot
wrote:

Bonjour,
J'ai développé une form qui lance un thread serveur de type socket UDP.
Ce thread est à l'écoute de message et met à jour ma form dès qu'il
reçoit un message.
Quand je souhaite fermer ma forme je n'arrive pas à arrêter ce thread en
utilsant la méthode abort().
Mon application est elle bien stoppée (Application.Exit();) Dès que le
thread reçoit un nouveau message, il tombe en erreur car il essaie de
mettre à jour la forme qui n'est plus référencée.

Il y a-il une subtilité au niveau des threads bloquants.

Merci pour vos conseils.
Pierre.



Essayez si la mise à "true" de la propriété IsBackground du thread qui
ne veut pas terminer change les choses. La propriété "IsDisposed" the
votre forme pourrait aussi être utilisée - avant de l'accéder - pour
déterminer si la forme est toujours "en vie".

Amicalement,
Gilles.

Regards,
Gilles [MVP].

(Please reply to the group, not via email.
Find my MVP profile with past articles / downloads here:
http://www.gilleskohl.de/mvpprofile.htm)



Lmaise à "true" de la propriété IsBackground du thread résoud bien mon
problème.
Merci beaucoup et bonne journée.
Pierre