IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Dotnet Discussion :

Attendre que tous mes invoke soient finis avant de fermer ma fenêtre


Sujet :

Dotnet

  1. #1
    Membre habitué Avatar de Rodrigue
    Inscrit en
    Août 2002
    Messages
    487
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 487
    Points : 157
    Points
    157
    Par défaut Attendre que tous mes invoke soient finis avant de fermer ma fenêtre
    Bonjour,

    J'ai un petit problème: j'ai un thread qui met à jour l'interface de mon logiciel. A chaque fois, pour synchroniser mon thread avec le thread principal, j'appelle mes fonctions delegate de mise-à-jour de l'interface par des Invoke.

    Le problème c'est que lorsque je ferme ma fenêtre certains de ces Invoke sont toujours en attente, et mon programme bloque (ça ne plante pas); le programme ne se ferme tout simplement pas...

    Comment faire pour attendre que tous mes invoke soient traités avant de fermer ma fenêtre? Je suppose qu'il faut que je place ce bout de code dans l'évènement OnClosing de ma fenêtre.

    Merci!

  2. #2
    Membre habitué Avatar de Rodrigue
    Inscrit en
    Août 2002
    Messages
    487
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 487
    Points : 157
    Points
    157
    Par défaut
    J'ai finalement trouvé.

    En fait, il faut remplacer les invoke par des BeginInvoke.
    Cette fonction renvoie un objet IAsyncResult.
    Il suffit après d'attendre la fin de l'appel asynchrone à l'aide des fonctions qui comprend un timeout.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 06/02/2014, 10h21
  2. Réponses: 5
    Dernier message: 18/12/2012, 08h24
  3. Réponses: 1
    Dernier message: 07/03/2012, 17h31
  4. [MySQL] Comment faire pour que mes données soient sensibles à la casse
    Par Alexandrebox dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 04/04/2007, 11h29
  5. Comment attendre que tous les thread lancés soient morts pour lancer une action.
    Par rgesnot dans le forum Concurrence et multi-thread
    Réponses: 2
    Dernier message: 31/03/2007, 20h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo