강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của one16
one16

câu hỏi đã được viết

[Series Phát triển Game MMORPG với C# và Unity] Part4: Game Server

Thực hành cài đặt ReaderWriterLock

WriteLock이 Empty_Flag일때만 가능하다면...

Viết

·

283

0

a스레드에서 ReadLock 사용하고

b스레드에서 WriteLock을 사용하면 대기가 되는데(Empty_Flag가 아니니깐)

ReadLock은 Write_Mask만 없으면 계속 들어올 수 있으니

끝임없이 ReadLock이 발생된다면 대기 중인 b스레드는 언제 WriteLock이 진행되나요?

C#unity네트워크

Câu trả lời 2

0

Rookiss님의 프로필 이미지
Rookiss
Người chia sẻ kiến thức

그 정도로 극단적으로 끊임없이 하는 경우는
사실상 배제해야 합니다. Read는 아주 짧게 값만 읽는 것이 목표이고
그 이상 시간을 잡는다면 그놈이 범인입니다(?)

0

one16님의 프로필 이미지
one16
Người đặt câu hỏi

질문하고 보니 약간 이상하게 작성했는데 ReadCount가 1 이상이면 다른 쓰레드가 WriteLock하면 대기 상태이고, ReadLock을 했던 쓰레드들이 ReadUnlock이 다 되어야 ReadCount가 0이 되서 EMPTY_FLAG가 될 수 있고 그때 대기 중인 WriteLock이 진행되는다고 생각하는 데,

그럼 다른 쓰레드가 끝임없이 ReadLock을 사용해서 ReadCount가 0이 되지 않으면 어떻게 되는 지 궁금합니다.

Hình ảnh hồ sơ của one16
one16

câu hỏi đã được viết

Đặt câu hỏi