교착 상태를 피하기 위해 계층 잠금 시스템을 구축하려고합니다. 의미는 코드를 레이어 (또는 레벨)로 나누고 각 레벨에서 다음 레벨의 잠금 만 허용합니다. 동일한 레벨 내에서 사전 정의 된 순서로 잠 가야합니다. 이렇게하면 대부분의 교착 상태가 방지됩니다. 이와 비슷한 것 http://www.drdobbs.com/parallel/use-lock-hierarchies-to-avoid-deadlock/204801163?pgno=1RW 잠금 (계층 잠금 포함)
뮤텍스의 경우이 기능은 매력처럼 작동하지만 읽기 쓰기 잠금의 경우 실패합니다. 예를 들어, 읽기 잠금을 취한 다음 쓰기 잠금으로 설정하려는 경우이 알고리즘으로 금지 된 동일한 레벨에서 새 잠금을 가져 가고 있음을 의미합니다.
RW 및 뮤텍스 잠금에 대해 알고리즘이 어떻게 변경 되나요? 고려해야 할 다른 알고리즘이 있습니까?
PS : 나는 C를 프로그래밍을하고 ++하지만 문제는 이론적 하나 실제로 rellevant입니다 또한
읽기 쓰기 잠금이란 무엇을 의미합니까? – Jackson
자급자가 질문을 편집 할 수 있습니까? 링크가 끊어지면 더 이상 이해할 수없는 질문이 남습니다. 또한 한 번에 읽을 수있을 때 질문 질을 높이게됩니다. – MicroVirus
하지만 계층 적 잠금은 알려진 알고리즘이므로 아무 문제가 없어야합니다. – Epic