HANDLE CreateEvent( LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL InitialState, LPTSTR lpName );
lpEventAttributes
무시하고 NULL 값을 넣어준다.
bManualReset
Event가 수동으로 reset되는지 자동으로 reset되는지 여부를 결정한다
InitialState
Event의 초기상태를 결정. TRUE이면 Signal 된 상태로 시작
lpName
Event의 이름을 명시적으로 결정
용법
Event를 만들고, Thread를 만들고, Thread를 실행시켜서 ThreadFunc함수에서 while로 돌려서 WaitForSingleObject()로 event를 기다린다.
HANDLE eventHnd, ThdHnd;
eventHnd = CreateEvent(NULL, FALSE, FALSE, L"event1");
ThdHnd = CreateThread(NULL, 0, ThreadFunc, NULL, 0, NULL );
....
while (TRUE){DWORD rt;
rt = WaitForSingleObject(regEvent, INFINITE);if( rt == WAIT_OBJECT_0) { // TO DO Something } } }