线程安全的一个很经常的需求是允许并发读,但是不允许并发写,例如对于文件就是这样的。
ReaderWriterLockSlim 在.net framework 3.5的时候就提供了,它是用来代替以前的”fat”版本的”ReaderWriterLock”
这两个类,有两种基本的锁—-一个读锁,一个写锁。
写锁是一个完全排他锁。
读锁可以和其他的读锁兼容
因此当一个线程持有写锁的是很,所有的尝试获取读锁和写锁的线程全部阻塞,但是如果没有一个线程持有写锁,那么可以有一系列的线程并发的获取读锁。
Read