ReaderWriterLock은 리소스에 대한 액세스를 동기화합니다.
ReaderWriterLock은 한 번에 하나씩 잠기는 Monitor보다 처리량이 더 좋습니다. 이것은 리소스가 거의 변경되지 않는 상황에서 작동합니다.
C#에서 ReaderWriter 잠금을 선언하는 방법을 살펴보겠습니다 -
static ReaderWriterLock r = new ReaderWriterLock();
다음은 C#에서 ReaderWriter 잠금의 속성입니다 -
Sr.No. | 속성 및 설명 |
---|---|
1 | IsReaderLockHeld 현재 스레드가 리더 잠금을 보유하고 있는지 여부를 나타내는 값을 가져옵니다. |
2 | IsWriterLockHeld 현재 스레드가 Writer 잠금을 보유하고 있는지 여부를 나타내는 값을 가져옵니다. |
3 | WriterSeqNum 현재 시퀀스 번호 |
다음은 ReaderWriter 잠금의 몇 가지 방법입니다 -
Sr.No. | 방법 및 설명 |
---|---|
1 | ReaderLock 획득(TimeSpan) 타임아웃에 대한 TimeSpan 값을 사용하여 리더 잠금을 획득합니다. |
2 | 작성자 잠금 획득(시간 범위) 타임아웃에 대한 TimeSpan 값을 사용하여 Writer 잠금을 획득합니다. |
3 | 같음(객체) 지정된 개체가 현재 개체와 같은지 여부를 확인합니다.(Object에서 상속됨) |
4 | GetHashCode() 기본 해시 |
5 | GetType() 현재 인스턴스의 유형 |
6 | ReleaseReaderLock() 잠금 횟수 감소 |