windows消息响应机制

消息队列:消息队列有两种,分为系统消息对垒和应用程序消息队列

产生的消息首先由windows系统捕获

放在系统消息队列中,再拷贝到对应的应用程序消息队列中

系统为每一个应用程序维护一个消息队列

消息循环:系统为每个应用程序维护一个消息循环

消息循环会不断检测自身的消息队列,每有一个消息

就用getmessage()取出消息

DispatchMessage()把取出的消息分配给相应的窗口或线程

由窗口过程处理函数defWindowproc处理

windows的应用程序靠消息驱动来实现功能。

而消息驱动靠消息机制来处理。消息机制就有由消息队列、消息循环、消息处理构成

windows为每个需要接受消息和处理消息的线程

建立消息对垒,包括发送消息对垒、等级消息队列、输入消息对垒、响应消息队列

其中发送消息对垒保存其他线程通过SendMessage发送给该线程的建立窗口的消息

等级消息队列保存通过PostMessage发送给该线程或该线程建立窗口的消息

输入消息队列保存系统的输入

响应消息对垒包含该线程调用sendMessage给指定窗口的窗口处理函数处理完后

猜你喜欢

转载自blog.csdn.net/weixin_38756546/article/details/81091708