ReaderWriterLock permet à plusieurs threads de lire une ressource simultanément, mais nécessite qu'un thread attende un verrou exclusif afin d'écrire dans la ressource.
Dans votre application, vous pouvez utiliser un ReaderWriterLock pour fournir une synchronisation coopérative parmi les threads qui accèdent à une ressource partagée. Dans ce cas, des verrous sont pris sur ReaderWriterLock lui-même. Comme avec tout mécanisme de synchronisation de threads, vous devez veiller à ce qu'aucun thread ignore le ReaderWriterLock.
Vous pouvez également créer une classe qui encapsule une ressource. Cette classe peut utiliser un ReaderWriterLock pour implémenter son modèle de verrouillage pour la ressource. ReaderWriterLock utilise un design efficace et peut ainsi s'utiliser pour synchroniser des objets individuels.
Structurez votre application pour minimiser la durée des opérations de lecture et d'écriture. Les longues opérations d'écriture affectent le débit directement car le verrouillage en écriture est exclusif. Les longues opérations de lecture bloquent les writers en attente et si un thread en attente d'écriture se bloque, les threads qui demandent de nouveaux verrouillages en écriture seront également bloqués.
Voir aussi
Référence
ReaderWriterLock ClassConcepts
MoniteursAutres ressources
Threading managéFonctionnalités et objets de threading
Outils (masquer)
S'enregistrer
Liste des Membres
Qui est en ligne?
FAQ