C++技术问题总结-第10篇 MFC中SendMessage与PostMessage异同
2014-09-09 16:04
330 查看
应用程序消息有三个来源:硬件消息(鼠标键盘等外设)、PostMessage消息、SendMessage消息,都可以发送消息事件来驱动程序执行。
消息流图如下。
硬件消息响应流程如下。
①消息进入系统消息队列。
②消息分发到应用程序消息队列。
③应用程序循环获取消息。
④消息处理函数执行。
PostMessage直接进入上述步骤②,将消息放入消息队列中,然后立刻返回。
SendMessage直接进入上述步骤④,调用消息处理函数,等待函数执行完成后返回。
消息流图如下。
硬件消息响应流程如下。
①消息进入系统消息队列。
②消息分发到应用程序消息队列。
③应用程序循环获取消息。
④消息处理函数执行。
PostMessage直接进入上述步骤②,将消息放入消息队列中,然后立刻返回。
SendMessage直接进入上述步骤④,调用消息处理函数,等待函数执行完成后返回。
相关文章推荐
- C++技术问题总结-第5篇 TCP三次握手
- C++技术问题总结-第4篇 TCP与UDP
- C++技术问题总结map、vector、list、deque各自的使用场合
- C++技术问题总结-第2篇 进程通信
- C++技术问题总结-第15篇 内存泄露有哪些方法定位,崩溃有哪些方法定位
- C++技术问题总结-第11篇 网络通信中主机序网络序
- C++技术问题总结-第8篇 STL内存池是怎么实现的
- C++技术问题总结-第3篇 线程同步
- C++技术问题总结-第13篇 调用约定有哪些,有什么不同
- C++技术问题总结-第8篇 STL内存池是怎么实现的
- 我遇到的c++、mfc问题总结(2)
- C++技术问题总结-第6篇 STL迭代器相关
- C++技术问题总结-第11篇 网络通信中主机序网络序
- C++技术问题总结-第12篇 设计模式原则
- C++技术问题总结-第0篇 类型转换
- MFC发送消息函数PostMessage(异步)和SendMessage(同步)的异同
- C++技术问题总结-第12篇 设计模式原则
- C++技术问题总结-第9篇 智能指针
- C++技术问题总结-第7篇 map、vector、list、deque各自的使用场合
- C++技术问题总结-第1篇 内存布局