1. 실행순서 동기화와 이벤트 오브젝트

- 쓰레드의 실행순서가 중요한 이슈인 경우에는 실행순서 동기화를 고려해야 한다. 이를 위해서 Windows에서는 이벤트 오브젝트 기반의 동기화 기법을 제공한다.


2. 타이머 기반 동기화

- 타이머 역시 동기화 오브젝트이다. 다른 동기화 오브젝트와 달리 일정 시간이 지나면 자동으로 Signaled 상태가 되는 특성을 지니고 있어서 타이머라 한다.


3. 이벤트 더하기 뮤텍스

- 실제로 프로그램을 개발하다 보면 이보다 훨씬 복잡한 구성의 동기화가 필요한 경우도 많다. 쓰레드를 사용한다는 것은 여러 가지로 편리하고, 쓰레드 기반으로 프로그램을 구상할 경우 초반 설계도 훨씬 수월하다. 그러나 실제 구현에 들어가면 예상치 못한 일을 경험하게 된다. 이러한 문제를 미연에 막기 위해서는 동기화 기법을 정확히 알고 아는 만큼만 적용하는 지혜가 필요하다.

+ Recent posts