ReaderWriterLockSlim(不是那么苗条)替换,递归,可升级读取?

时间:2013-04-04 23:00:52

标签: .net multithreading readerwriterlockslim

我们的代码中有很多ReaderWriterLockSlim。每个都需要6K内存,所以这已成为一个大问题。

作为一个快速解决方案,我正在寻找一个不需要内存的替代品。我正在尝试Joe Duffy's RW-lock,但它不可升级和写递归(并且非常难以实现)。

还有其他更多的记忆灯更换吗?

2 个答案:

答案 0 :(得分:1)

嗯,一个明显的方法是使用ReadWriterLock(没有Slim),我认为这种内存密集程度较低(但在某些情况下也效率较低)。

答案 1 :(得分:0)

如果其他人需要内存更轻的RW锁,其语义与ReaderWriterLockSlim相同:

  • 升级;
  • 递归;
  • lock属于一个线程,因此,例如,递归的W-lock是正常的,或者来自W-lock内部的R-lock是正常的;

one from Mono source应该没问题。