将ReaderWriterLockSlim用于读写者

时间:2016-03-02 07:04:51

标签: c# .net multithreading concurrency readerwriterlockslim

我需要同时允许多个编写器/单个阅读器。

我找到了ReaderWriterLockSlim课,但我的命名有问题。我需要使用EnterReadLock()来允许编写器和EnterWriteLock()以允许读者写入,这对于进一步使用可能有点混乱。

ReaderWriterLockSlim类是否有针对我的问题的包装类,或者您可以建议另一种解决方案。

谢谢!

2 个答案:

答案 0 :(得分:0)

如果您可以使用.Net 4.5或更高版本,我建议您使用Task Parallel Library's BufferBlock课程。 (您通过Nuget安装TPL。)

请参阅herehere了解示例代码。

或者,您可以使用。{4.0}或更高版本支持的BlockingCollection

这两个类使得在多个编写器和单个读取器之间共享队列变得相对容易。

答案 1 :(得分:0)

这是你在找什么? Altough我建议你坚持常规的命名约定,让更容易从另一个人更新未来。

{{1}}