I\'m doing a very silly benchmark on the ReaderWriterLock with this code, where reading happens 4x more often than writting:
class Program { static void
Check out this article: http://blogs.msdn.com/b/pedram/archive/2007/10/07/a-performance-comparison-of-readerwriterlockslim-with-readerwriterlock.aspx
Your sleeps are probably long enough that they make your locking/unlocking statistically insignificant.