Multithreading dans les composants
Le composant BackgroundWorker implémente certaines fonctionnalités de threading dans l'espace de noms System.Threading et représente une méthode plus facile pour implémenter les fonctionnalités de multithreading. Pour plus d'informations, consultez Vue d'ensemble du composant BackgroundWorker.
Le multithreading, ou traitement dissocié des threads, consiste en la capacité d'une application d'exécuter simultanément plusieurs threads d'opération. Par exemple, une application multithread peut être un programme qui reçoit des entrées d'utilisateur sur un thread, exécute différents calculs sur un deuxième thread et met à jour une base de données sur un troisième thread. Dans une application à un seul thread, un utilisateur peut perdre un temps précieux à attendre l'exécution de calculs ou de la mise à jour d'une base de données. Dans une application multithread, ces processus peuvent être exécutés en arrière-plan, afin que l'utilisateur ne perde pas de temps.
Le multithreading peut être un outil puissant dans la programmation de composants. L'écriture de composants multithread vous permet de créer des composants capables d'exécuter des calculs complexes en arrière-plan tout en permettant à l'interface utilisateur de répondre aux entrées d'utilisateur.
Bien que le multithreading puisse représenter un outil puissant, son application peut parfois s'avérer difficile. L'implémentation incorrecte de code multithread peut réduire les performances des applications, voire geler des applications. Les rubriques suivantes vous présentent certaines considérations et meilleures pratiques relatives à la programmation multithread.
Le .NET Framework offre plusieurs options pour le multithreading dans les composants. La fonctionnalité dans l'espace de noms System.Threading est une option. Le modèle asynchrone basé sur événement en est une autre. Le composant BackgroundWorker est une implémentation du modèle asynchrone; il vous procure cette fonctionnalité avancée encapsulée dans un composant pour plus de facilité d'utilisation.
Dans cette section
- Programmation multithread pour les composants avec System.Threading
Décrit l'utilisation de l'espace de noms System.Threading pour créer des composants multithread.
Référence
Classe BackgroundWorker
Vous permet d'exécuter une opération sur un thread séparé, dédié.Thread
Fournit des informations sur la syntaxe et les membres d'une référence .NET Framework.
Sections connexes
Programmation multithread avec le modèle asynchrone basé sur les événements
Décrit la manière standard d'emballer un composant qui a des fonctionnalités asynchrones.Multithreading in Visual Basic
Fournit des liens vers certaines rubriques relatives à l'utilisation du multithreading avec Visual Basic.Meilleures pratiques pour le threading managé
Fournit des directives pour l'utilisation de fonctionnalités de threading managées.
Topic | Location |
---|---|
Threads, exemple | Exemples d'applications C# |
Threads, exemple | Exemples d'applications C# |