Windows 基於消息驅動系統,爲了存放消息,系統提供系統消息隊列.
工作原理:
系統在監控到事件的發生時就會產生相應消息並存放到消息隊列中。每個Windows應用程序也有自己的消息隊列。系統在處理系統消息隊列時會將屬於應用程序的消息投遞到相應的消息隊列中。而消息循環就不斷從消息隊列中提取消息。分發給對應的窗體過程函數去處理。
如下圖:
實現消息循環方式:
1.等待模式 - 隊列中無消息時程序掛起
2.非等待模式 – 隊列中無消息時程序不掛起
兩種方式區別:
區別在於當消息隊列裏沒有消息時,是繼續等待消息才工作還是繼續做其他事