- 발 꼭 들가 것들
- 로가 무가?
- 드가 무가?
- 멀드를 떻게 나?
- 드 동기가 무가?
- 리 무가?
- 리 떻게 나?
- 로가 무가?
드 ¶
드란 무가? 로 말다면 나 단를 드라고 다. 98는 멀 가능 로그램다. 러 다는 것다. CPU 는 개 밖는 못다. 그렇다면 떻게 95는 멀 가능까? 바로 다. CPU 리 가 1 99개 다고 가 다. 그리고 A,B,C 3개 로그램 동라고 를 들본다면 1 CPU는 A 당는 33개 B 당는 33개 C 당는 33개로 나 다.
렇게 로 멀 로 다라는 미다. 때 나 단들 드라고 다. "그럼 로그램 내부 모든 드로 나 겠?" 라는 문 것 같데 그렇는 다. 드란 독립 단다. 다른것 구 는 단를 드라고 다. 드 로를 고 대량 데를 로드 린로 력다고 가 다. 린 드로를 까? 물론 95는 린는 린 대로 동 고 드 로는 드 로대로 다. 기 데를 다 는다고 가 다. 린고 드로로 로 내 력면 데를 다 다? 물론 다. 기 드로 력 나 드 린 나 드 또 다 로드가 또나 드다. 로 98 내부 모든 로그램 동 멀 드로 되 다. 그렇기 때문 다 는 것다.
로그램 다 보면 로그램 로그램 다른 면 또나 고 때가 것다. 때 는 것 바로 드 다. 로 로그래밍 고 난 것 드로 로 면 됩다
렇게 로 멀 로 다라는 미다. 때 나 단들 드라고 다. "그럼 로그램 내부 모든 드로 나 겠?" 라는 문 것 같데 그렇는 다. 드란 독립 단다. 다른것 구 는 단를 드라고 다. 드 로를 고 대량 데를 로드 린로 력다고 가 다. 린 드로를 까? 물론 95는 린는 린 대로 동 고 드 로는 드 로대로 다. 기 데를 다 는다고 가 다. 린고 드로로 로 내 력면 데를 다 다? 물론 다. 기 드로 력 나 드 린 나 드 또 다 로드가 또나 드다. 로 98 내부 모든 로그램 동 멀 드로 되 다. 그렇기 때문 다 는 것다.
로그램 다 보면 로그램 로그램 다른 면 또나 고 때가 것다. 때 는 것 바로 드 다. 로 로그래밍 고 난 것 드로 로 면 됩다
드 동기 ¶
드 동기
드를 동기 는 것 당 려 나다. 만 더라 로그램 각과는 다른 방로 러가고 맙다. 또 러개 드를 동 디깅 다는 것 닙다. 그러나 다 VC는 기본로 동기가 된 로그램 공다. 단 는 다른 드로 뺏기는 로 다는 기다. 기는 드 동기 대 보기 로만 개다.
로그램 될 때 개 데를 동 두 개 로그램 들링경가 다. 를 들 (a)라는 A로그램 데를 력,고 B라는 데는 데를 검다. B가 고 는 A라는 로그램 그데를 고 다면 기 문가 발됩다. A가 B가 게 것가? 면 B가 고 난 A라는 데가 게 것가? 런 문 동 가 결 목다.
A드 B드가 동 다가 발되 경 때 B드는 C라는 결과가 기 까는 드 동 다. 만 고 드를 로 다면 문 나날것다. B C가 각는 B 가 같 다. 렇게 같게 맟는 것 동기 라고 다.
MFC는 다 6가 래를 멀딩 공다.
동기 래 CSyncObject, CSemaphore, CMutex, CCriticalSection, CEvent 동기된 근 는 CMultiLock과 CSingleLock 그것다.
CSyncObject는 CSemaphore, CMutex, CCriticalSection, CEvent 래로 는 다.
드를 동기 는 것 당 려 나다. 만 더라 로그램 각과는 다른 방로 러가고 맙다. 또 러개 드를 동 디깅 다는 것 닙다. 그러나 다 VC는 기본로 동기가 된 로그램 공다. 단 는 다른 드로 뺏기는 로 다는 기다. 기는 드 동기 대 보기 로만 개다.
로그램 될 때 개 데를 동 두 개 로그램 들링경가 다. 를 들 (a)라는 A로그램 데를 력,고 B라는 데는 데를 검다. B가 고 는 A라는 로그램 그데를 고 다면 기 문가 발됩다. A가 B가 게 것가? 면 B가 고 난 A라는 데가 게 것가? 런 문 동 가 결 목다.
A드 B드가 동 다가 발되 경 때 B드는 C라는 결과가 기 까는 드 동 다. 만 고 드를 로 다면 문 나날것다. B C가 각는 B 가 같 다. 렇게 같게 맟는 것 동기 라고 다.
MFC는 다 6가 래를 멀딩 공다.
동기 래 CSyncObject, CSemaphore, CMutex, CCriticalSection, CEvent 동기된 근 는 CMultiLock과 CSingleLock 그것다.
CSyncObject는 CSemaphore, CMutex, CCriticalSection, CEvent 래로 는 다.
동기는 멀 드 로그래밍 고 문다.
각는 것과 는 것, 두 가 만 는 다 명 다. 들 나 놓 다. 를 려면 모두 가만 다.
만 모든 가 른 고 고 기다린다면 문가 발다. 그들 무 므로 모두 굶게 된다. 물론 들 모두 기를 모르며 먹는 모두 같다고 가다. 런 를 데 드락라고 다. 데드락 방려면 떻게 까? 릿는 다 개 나를 된 경 반드 내려놓고 다른 록 고 다. 렇게 면 같 데드락 발기 된 는 른 된 내려놓고 기다리게 되므로 된 른 가 게 된다.
만 모든 가 른 고 고 기다린다면 문가 발다. 그들 무 므로 모두 굶게 된다. 물론 들 모두 기를 모르며 먹는 모두 같다고 가다. 런 를 데 드락라고 다. 데드락 방려면 떻게 까? 릿는 다 개 나를 된 경 반드 내려놓고 다른 록 고 다. 렇게 면 같 데드락 발기 된 는 른 된 내려놓고 기다리게 되므로 된 른 가 게 된다.
드 동기 (Thread Synchronization) (2) ¶
- 동 나는 만 가 는 때 드들 를 는 것
- ex)) 로그램 , 데를 면 보는 련 반드 데를 되 (동기 )
멀 개념 ¶
- 로그램 로딩되, 메모리 되고 는 를 로(process) (task)라 다.
는 멀 다. , 러 개 로를 동 는 능력 가고 다. 멀 로 러 개 로가 동 되는 것 라, 러 각로 나 동 되는 것럼 보는 것다.
리 (Critical Section) ¶
반복로 동는 두 개 드가 나 리를 공려고 때, 동 리 근 못록 기 리 다.
Critical Section of Code 리 또는 리 리라 리는 부 과 관련된 부 럽로 막기 리는 곳며 또 단 대로 부 는 구다. 는 드 공를 막고 배 공로 된다.
OS 공나 드가 되는 다른 로 interrupt 되는것 방기 리 게 된다. 는 로그래밍 드관련 리를 때 나는 다.
http://iruril.cafe24.com/iruril/study/thread/thread%20syn.html
http://165.194.17.15/pub/upload/thread.zip
http://165.194.17.15/pub/upload/thread.zip