콜백함수

Code/Desktop 2014. 2. 6. 19:01

CallBack Function

- 정보 제공자가 지정한 상황이 되면 콜백함수를 호출
예) 패킷 수신 쓰레드가 수신패킷이 있을때만 처리할 함수(콜백함수) 를 호출

- 함수포인터를 사용해서 재활용도가 높음

- 본함수는 루프를 돌리고, 특정기능을 콜백함수로 아웃소싱
    - 콜백함수가 특정 기능의 라이브러리로 동작
    - 예) EnumWindows() 함수는 모든 윈도우 핸들을 콜백함수에 전달하고
    콜백함수인 EnumWindowsProc()는 전달받은 윈도우 핸들을 처리하고 결과값은 리턴
BOOL EnumWindows( WNDENUMPROC lpEnumFunc, // callback function
LPARAM lParam // application-defined value
);

BOOL CALLBACK EnumWindowsProc(
HWND hwnd, // handle to parent window
LPARAM lParam // application-defined value
);   



//=============================

예제


//참고
* 함수 호출규약
__cdecl      : WINAPIV
__stdcall : WINAPI, CALLBACK, PASCAL, APIENTRY

//=============================
'쓰레드 구동 함수'들의 '쓰레드 실제기능 함수' 형식


//=============================
//참고
http://smok95.tistory.com/193
http://blog.naver.com/PostView.nhn?blogId=sosuler&logNo=10131440720


반응형
Posted by codens