我是靠谱客的博主 寂寞小猫咪,最近开发中收集的这篇文章主要介绍如何给线程发送消息,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

与窗口消息不同,线程消息用ON_THREAD_MESSAGE来映射,发送消息用PostThreadMessage函数。

详述如下:
1. 声明一个派生自CWinThread的类,例如CMyThread类。
 在类的声明中(.h头文件)加入消息处理函数
 afx_msg void AFX_MSG_CALL OnReset(WPARAM wParam, LPARAM lParam);    // 
 
2. 在类的实现中(cpp文件)
 添加消息映射宏
 BEGIN_MESSAGE_MAP(CMyThread, CWinThread)
  ON_THREAD_MESSAGE(DM_RESET, &CMyThread::OnReset)  // DM_RESET为自定义的消息,此处假设为WM_USER+100
 END_MESSAGE_MAP()
 
3. 实现消息处理函数体
 void AFX_MSG_CALL CMyThread::OnReset(WPARAM wParam, LPARAM lParam)
{
 // 加入自己的实现代码
}

4. 向线程对象发送消息,用CWinThread类的PostThreadMessage函数。
 假设有一个CMyThread类的对象为m_thread;
 m_thread.PostThreadMessage(DM_RESET,0,0);

最后

以上就是寂寞小猫咪为你收集整理的如何给线程发送消息的全部内容,希望文章能够帮你解决如何给线程发送消息所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部