|
문정원 님이 쓰신 글 :
: class Test
: {
: TList* pList;
: A();
: B();
: ..
: };
:
: void Test::A()
: {
: EnterCriticalSection(&cs);
: 리스트에 삭제
: LeaveCriticalSection(&cs);
: }
:
: void Test::B()
: {
: EnterCriticalSection(&cs);
: 리스트 참조
: LeaveCriticalSection(&cs);
: }
:
: 쓰레드에서 사용한다고 가정하여
: B() 에서 pList 를 참조하는 과정에서 A()가 실행되어 삭제될때
: 보호를 받을수 있나요?
: 아니면 세마포어나 뮤텍스를 사용하여야 하나요..
:
: 꼭좀 알려주세요....
:
:
쓰레드상에서 동기화시키려면 위와 같이 사용하면 문제가 없습니다.
|