(я предполагаю, что вы имеете в виду ReaderWriterLockSlim
, так как я не думаю, что ReaderWriterLock
имеет режим обновляемых чтений.)
Хотя только один поток может ввести обновляемую блокировку чтения, один поток может иметь обновляемую блокировку чтения и другие потоки могут вводить блокировку чтения:
только один поток может войти в режим обновляемые в любой момент времени. Если поток находится в обновляемом режиме, и нет потоков, ожидающих входа в режим записи, любое количество других потоков может перейти в режим чтения, даже если есть очереди, ожидающие перехода в режим обновления.
Сравните с замком записи:
Когда есть потоки, ожидающие, чтобы войти в режим записи, дополнительные потоки, которые пытаются ввести не режим или обновляемые в режиме чтения блока, пока все потоки, ожидающие, чтобы войти в режим записи либо тайм-аут, либо введенный режим записи, а затем вышел из него.
Другими словами, блокировка записи является полностью эксклюзивным, в то время как с возможностью расширения блокировки чтения позволит другим потокам, чтобы сохранить ввод/выход для режима чтения до завершения обновления не требуется.
Вы хотите сказать ReaderWriterLockSlim? –