condition_variable 언제 씀?
- 스레드간 통신 원할 때
- ex) 특정조건을 만족할 때까지 스레드를 블록하고 싶을 때.
사용방법
- condition_variable:: wait, notify_one, notify_all 메서드를 이용
- 다른 스레드가 일을 처리할 때까지 기다리게 할 수 있다.
- wait 을 사용하기 위해서는,
- 스레드가 먼저 mutex 를 점유해야 한다.
- notify_… 함수를 호출하면 wait 하고 있는 조건변수에 알린다.
- 그러면 해당 스레드가 깨어난다.