해결책은 순환 대기를 끊는 방식으로 모인다

모두가 하나를 쥔 채 다음 하나를 기다리는 고리가 생기면 아무도 식사를 시작할 수 없다.

위험 패턴

P0P1P2P3P4

각자가 왼쪽을 보유한 채 이웃의 오른쪽을 기다리면 대기 고리가 닫힌다.

order

비대칭 순서

일부 철학자의 집는 순서를 뒤집어 모두 같은 방향으로 기다리는 고리를 끊는다.

limit

동시 시도 4명 제한

한 자리를 비워 두면 최소 한 명은 양쪽 젓가락을 얻고 식사를 끝낼 수 있다.

monitor

조건 검사 후 동시 획득

모니터가 양쪽이 모두 비어 있을 때만 상태를 eating으로 바꿔 부분 점유를 막는다.