Here is handy comparison of the performance ReaderWriterLock and ReaderWriterLockSlim:
ReaderWriterLock
ReadLock -> Release Lock = 0.00014 ms
WriteLock -> ReleaseLock = 0.00012 ms
ReadLock -> UpgradeToWriteLock -> ReleaseLock = 0.00021 ms
ReaderWriterLockSlim
ReadLock -> ExitReadLock = 0.00005 ms
WriteLock -> ExitWriteLock= 0.00004 ms
ReadLockUpgradeable -> WriteLock -> ExitWriteLock -> ExitReadLock = 0.00009 ms
So it appears that the ReaderWriterLockSlim is approximately ~3 times faster in most cases.
Note: I came up with these number by writing a c# console App (.net 4.0) which aquired/released locks in a for loop 1,000,000 times with a StopWatch measuring the time taken.
The post ReaderWriterLock vs. ReaderWriterLockSlim Performance appeared first on MetroStar Systems Blog.