[.net c#] Invoke et BeginInvoke help

Invoke et BeginInvoke help [.net c#] - C#/.NET managed - Programmation

Marsh Posté le 06-06-2005 à 16:32:38    

bonjour,
 
je n'arrive pas à comprendre ce que fait Control.Invoke et BeginInvoke.... et quand est ce qu'il faut les mettre et pourquoi....
 
Merci d'avance

Reply

Marsh Posté le 06-06-2005 à 16:32:38   

Reply

Marsh Posté le 06-06-2005 à 17:16:26    

Winforms étant basée sur Win32, elle n'est pas multithreadée, ce qui veut dire que tu ne peux appeler une méthode d'une classe Winform que dans le même thread qui a créé l'objet.
Si tu veux l'appeler à partir d'un autre thread, tu dois utiliser Invoke ou BeginInvoke, qui prennent en paramètre un delegate vers la méthode que tu veux appeler.
BeginInvoke() réalise cet appel de manière asynchrone (le programme n'attend pas qu'elle soit terminée pour continuer son exécution), alors qu'Invoke() le fait de manière synchrone (le programme bloque tant que la fonction n'est pas terminée)


Message édité par Harkonnen le 06-06-2005 à 17:17:05

---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed