Je commencerais hors juste avec lock
serrures sont très incontestées pas cher vous pourrait utiliser ReaderWriterLockSlim
(en supposant que vous utilisez .N.. ET 3.5) mais un verrou est plus simple à obtenir. Optimisez-le si/quand cela devient un problème.
droite ReaderWriterLock
pourrait bien être plus lent que la serrure simple - il est pas aussi rapide que cela pourrait être, par conséquent, la version slim :)
Juste à quelle fréquence voulez-vous dire par « souvent »? Combien de contention attendez-vous? Vous pourriez vouloir le modéliser (par exemple, simuler un nombre raisonnable de requêtes) et ne pas comparer le verrouillage au verrouillage simple, juste pour voir quel est le surcoût.
Vous pouvez être en mesure d'utiliser l'option sans verrouillage de volatile
- mais franchement je l'ai récemment renoncé à ce trop difficile pour les gens sains d'esprit à raisonner sur. (Cela ne signifie pas ce que je pensais que cela signifiait.)
Que faites-vous réellement avec les données? Le type est-il un type immuable, donc une fois que vous avez la bonne référence, vous pouvez lire d'une manière sûre sans aucun verrouillage?
Bonne conseil- qui est l'une des bizarreries dans le cadre .NET que si vous lisez à ce sujet, vous pourriez finir par faire le mauvais choix. – RichardOD
@ Andrew- voici un bon article si vous voulez en savoir plus à ce sujet- http://blogs.msdn.com/pedram/archive/2007/10/07/a-performance-comparison-of-readerwriterlockslim-with-readerwriterlock .aspx – RichardOD
merci pour le conseil. Je lirai à chaque demande, aussi souvent qu'il y a du trafic. l'écriture sera de l'ordre d'une fois par jour. –