[완료]동기화 객체인 Semaphore, Mutex 질문 있습니다.

dionysos의 이미지

동기화 객체에 대해 공부하고 있는데 이해가 안되는 부분이 있어 질문 드립니다.

void 함수이름()
{
 GetMutex
 
 codes...
 .....
 
 ReleaseMutex
 
}

이렇게 되어 있다면
1. Mutex를 얻은 Task가 Cpu Time Quantum을 다 소비 하여도 Context Switching이 되지 않는다는 것을 보장하나요?

2. 세마포어는 어떤가요?

아시고 계시는분 가르침을 바랍니다.

gimmesilver의 이미지

Mutex나 Semaphore를 갖고 있다고 해서 해당 쓰레드가 스위칭되지 않는다는 보장은 없습니다.
만약 그런게 보장된다면 deadlock이 발생할 이유가 없겠죠...

------------------------
http://agbird.egloos.com

dionysos의 이미지

너무 오랜만에 배운거라 생각이 안났는데 답변 감사드립니다. ^^

+++++++++++++++++++++
노력은 배반하지 않는다.+
+++++++++++++++++++++

노력은 배반하지 않는다.