我查看了.NET 2.0中的ReaderWriterLock和.NET 3.5中的ReaderWriterLockSlim,而slim版本不使用内核对象进行锁定.对于我的上下文,它可能会产生大量(但不是很大)的对象,这听起来更好.
但是我编写的代码需要在过渡期间在.NET 2.0和3.5中使用,因此3.5版本虽然看起来很适合我的目的但却无法使用.
是否有人拥有或知道类似的类,我可以插入.NET 2.0并获得一些相同的好处?
据我所知,没有一个来自微软(否则ReaderWriterLockSlim
会毫无意义),如果你找到一个来自第三方的人而不是一个你信任的第三方,他们有很好的思想,他们花了很长时间思考,实施和测试它,我不相信.例如,我当然不会相信随机的CodeProject实现.
你有什么具体的措施表明,使用ReaderWriterLockSlim
会这么好很多,这是值得定神为.NET 2.0的替代品?这肯定是"很高兴",但我怀疑它具有重大意义的情况相对较少.除非你已经知道锁定对你来说是一个瓶颈,否则我会坚持你所拥有的,并且随时准备好升级.
您可能想尝试使用普通监视器而不是ReaderWriterLock
- 在许多情况下,RWL的开销超过了收益.
当然,这完全取决于具体情况 - 你的应用程序可能是一个真的会更快,更快ReaderWriterLockSlim
...