작성
·
325
0
락 부분이 좀 어려워 흔히 쓰는 뮤텍스 방식으로 수정해보았습니다. 사진은 하나만 넣었지만 WRITE_LOCK을 쓰는 모든 부분을 위와같이 수정했습니다.
하지만
위와 같은 에러가 나오는걸로 보아 멀티쓰레드 동기화 문제로 보입니다.
(혹시 안보이시면 우클릭 -> 새 탭에서 이미지 열기 해주시면 잘보일거에요)
답변 1
1
재귀적인 락 Recursive Lock 허용 여부입니다.
락을 잡은 상태에서, 동일한 쓰레드가 또 락을 잡아도 되느냐?~에서
우리가 만든 LOCK 코드에서는 이를 허용해줬습니다.
하지만 표준 mutex는 재귀적인 락을 허용하지 않습니다.
이렇게 테스트하면 동일한 에러가 나는 것을 확인할 수 있습니다.
재귀적인 락 관련해서는 얼마전 C# 강의에서 유사한 질문이 있었는데 아래 링크 참고 바랍니다.
|
https://www.inflearn.com/questions/547752?re_comment_id=191276