모니터모니터는 데이터와 그 데이터를 다루는 함수들이 하나의 객체처럼 캡슐화된 동기화 구조입니다.보통 언어나 시스템 레벨에서 제공되며, 락 + 조건변수(Condition variable)로 구성되어 있습니다.구성요소공유 자원 (Shared data)Lock (락) - 임계 구역 보호조건 변수 (Condition Variable) - 특정 조건이 만족될 때까지 대기 / 신호주요 연산wait() ( cond_wait() )→ Lock을 놓고 기다림. 조건이 만족될 때 다시 락을 획득합니다. (Lock과 함께 사용)signal() ( cond_signal() )→ 대기 중인 스레드 하나 깨움breadcast() ( cond_breadcast() )→ 모든 대기 스레드 깨움특징한 번에 하나의 스레드만 모니터 내부..