<pthread.h> 를 한정적으로, semaphore, condition variable (pthread_cond_xxx()) 간의 차이점이 명확하게 이해할 수 없어서 질문 드립니다.
둘간의 차이점이 무엇인지 설명 부탁드립니다.
<pthread.h> 를 한정적으로, semaphore, condition variable (pthread_cond_xxx()) 간의 차이점이 명확하게 이해할 수 없어서 질문 드립니다. 둘간의 차이점이 무엇인지 설명 부탁드립니다.
semaphore(pthread_mutex_xxx()?) 임계영역안에서 상호배제를 작동시키는거구요.
a가 자원을 달라~~~ (그저 외칠뿐입니다.) b가 자원을 달라~~~
condition varialble은 thread간에 동기화를 위한 것입니다.
a와 b가 c(wait)에게 "필요한 일이 끝났다."라고 알려줌.
하나의 특성의 예로) mutex는 임계영역에 들어간 thead를 제외한 thread는 블럭될 수 있으나 cond는 c에게 알려만 주고 자기 일을 하게 됩니다.
그나저나 백수 언제 탈출하냐... ㅡㅡ; 배고파라.
[quote]<pthread.h> 를 한정적으로, sema
semaphore(pthread_mutex_xxx()?)
임계영역안에서 상호배제를 작동시키는거구요.
a가 자원을 달라~~~ (그저 외칠뿐입니다.)
b가 자원을 달라~~~
condition varialble은
thread간에 동기화를 위한 것입니다.
a와 b가 c(wait)에게 "필요한 일이 끝났다."라고 알려줌.
하나의 특성의 예로)
mutex는 임계영역에 들어간 thead를 제외한 thread는 블럭될 수 있으나
cond는 c에게 알려만 주고 자기 일을 하게 됩니다.
그나저나 백수 언제 탈출하냐... ㅡㅡ; 배고파라.