Partager via


Multithreading avec des formulaires et contrôles

Mise à jour : novembre 2007

Outre le fait que le multithreading soit la solution la mieux adaptée aux procédures en cours d'exécution et aux méthodes de classe, vous pouvez également l'utiliser avec des formulaires et des contrôles. Si vous choisissez de l'utiliser de cette façon, tenez bien compte des points suivants :

  • Autant que possible, n'exécutez les méthodes d'un contrôle que sur le thread avec lequel ce contrôle a été créé. Si vous devez appeler une méthode d'un contrôle à partir d'un autre thread, vous devez utiliser Invoke.

  • N'utilisez pas l'instruction SyncLock pour verrouiller des threads qui manipulent des contrôles ou des formulaires. Comme les méthodes des contrôles et formulaires rappellent parfois une procédure d'appel, vous risquez de créer sans vous en rendre compte un blocage ; dans cette situation, deux threads attendent chacun que l'autre annule le verrou, ce qui entraîne l'arrêt de l'application.

Voir aussi

Concepts

États d'un thread

Paramètres et valeurs de retour pour les procédures multithread

Applications multithread

Référence

Invoke

InvokeRequired

Autres ressources

Multithreading dans les composants