Bonjour,
je dois maintenir une application développée par une autre personne que moi.
Dans cette application, un timer exécutée au sein d'un UserControl appelle cycliquement une méthode appelée Lecture.
Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 private void Lecture() { If (this.InvokeRequired) this.Invoke(new MonDelegate(Lecture)); else Traitement(); }
Ainsi l'appel de la méthode se fait dans le même thread que celui détenant le handle de fenêtre.
Cette méthode fait appel à la méthode Traitement.
Il arrive que le traitement soit plus long que le cycle d'exécution du Timer.
Ainsi, la méthode Lecture sera appelée dans un autre Thread.
Que se passe-t-il dans ce cas lors de l'appel à la méthode Invoke sachant que la méthode Traitement appelée précédemment n'est pas terminée ?
Merci d'avance,
Zoax.
Partager