When will you grow up?

[Win32 API] GetMessage() , PeekMessage() 본문

02. Study/API

[Win32 API] GetMessage() , PeekMessage()

미카이 2016. 3. 17. 13:05

GetMessage()                        PeekMessage()

BOOL GetMessage(                  BOOL PeekMessage(

LPMSG lpMsg,                         LPMSG lpMsg, HWND hWnd,

HWND hWnd,                           UINT wMsgFilterMin,

UINT wMsgFilterMin,                  UINT wMsgFilterMax,

UINT wMsgFilterMax);                UINT wRemoveMsg);



메시지 루프에서 메시지를 가져오는 -> GetMessage()함수이다.

스레드 메시지 큐에서 메시지를 가져올때, 메시지가 없으면 새로운 메시지가 전달될 때까지, 메시지를 리턴시키지 않는다. 이 시점에 다른 프로세스가 CPU를 쓸 수 있도록 양보한다.


GetMessage는 메시지를 받기 전에 절대로 리턴을 않하므로, 데드 타임을 활용 X




메시지 큐에서 메시지를 꺼내거나 검사하지만 메세지가 없더라도 바로 리턴을 한다. ->PeekMessage()

PeekMessage함수는 GetMessage와 정반대되는 성격을 지니며, 데드타임을 활용할수 있게하며,

잠깐 메시지 큐에서 제거할건지 보기만 할건지 정해서 PeekMessage가 됬다.

'02. Study > API' 카테고리의 다른 글

BardAPI를 이용한 ChatBot 만들기  (0) 2023.06.01
[Win32 API] 오른쪽버튼 누르면 좌표값 나오기  (0) 2016.02.07
Comments