MFC多线程编程
发布日期:2021-07-14 20:03:21
浏览次数:5
分类:技术文章
本文共 1492 字,大约阅读时间需要 4 分钟。
具体来说是:
在MFC中调用attach的时候
有个宏叫ASSERT_VALID(),这个方法不允许访问非本线程创建的继承于。
在CWnd函数里面有一个Valid()的静态方法,检测当前线程的MFC对象指针,是否在当前线程的Map中;
下面就是这个模块中线程状态结构体:
// AFX_MODULE_THREAD_STATE (local to thread *and* module)class AFX_MODULE_THREAD_STATE : public CNoTrackObject{public: AFX_MODULE_THREAD_STATE(); virtual ~AFX_MODULE_THREAD_STATE(); // current CWinThread pointer CWinThread* m_pCurrentWinThread; // list of CFrameWnd objects for thread CTypedSimpleListm_frameList; // temporary/permanent map state DWORD m_nTempMapLock; // if not 0, temp maps locked CHandleMap* m_pmapHWND; CHandleMap* m_pmapHMENU; CHandleMap* m_pmapHDC; CHandleMap* m_pmapHGDIOBJ; CHandleMap* m_pmapHIMAGELIST; // thread-local MFC new handler (separate from C-runtime) _PNH m_pfnNewHandler;#ifndef _AFX_NO_SOCKET_SUPPORT // WinSock specific thread state HWND m_hSocketWindow;#ifdef _AFXDLL CEmbeddedButActsLikePtr m_pmapSocketHandle; CEmbeddedButActsLikePtr m_pmapDeadSockets; CEmbeddedButActsLikePtr m_plistSocketNotifications;#else CMapPtrToPtr* m_pmapSocketHandle; CMapPtrToPtr* m_pmapDeadSockets; CPtrList* m_plistSocketNotifications;#endif#endif // common controls thread state CToolTipCtrl* m_pToolTip; CWnd* m_pLastHit; // last window to own tooltip INT_PTR m_nLastHit; // last hittest code TOOLINFO* m_pLastInfo; // last TOOLINFO structure INT_PTR m_nLastStatus; // last flyby status message CControlBar* m_pLastStatus; // last flyby status control bar};
转载地址:https://blog.csdn.net/daojin505/article/details/76812038 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2024年03月01日 21时29分38秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
HDC2020开发者大会鸿蒙,华为开发者大会HDC 2020官宣 或推鸿蒙2.0
2019-04-21
鸿蒙OS渲染图,鸿蒙OS前端开发入门指南:网络图片_Image渲染网络图片
2019-04-21
汽车鸿蒙音响怎么调,西玛怎样调车载音响均衡器 西玛调试车载音响步骤
2019-04-21
系统内部错误 Android,在Android中使用网络服务发现的内部错误
2019-04-21
android下载文件地址,安卓迅雷下载的文件在哪里迅雷下载文件存放位置-独木成林...
2019-04-21
android 覆盖安装广播,android监听本身应用覆盖安装
2019-04-21
html页面判断是手机端访问,JS 判断手机端和pc端后跳转对应页面
2019-04-21
html判断文本有多少字符,文本域字符数判断(2010年12月30日更新)
2019-04-21
宝塔面板怎么运行python_在宝塔面板配置Nginx的步骤
2019-04-21
als算法参数_Spark2.0协同过滤与ALS算法介绍
2019-04-21
java拆解_深入拆解Java虚拟机视频教程
2019-04-21
java integer 不变模式_Java代码的变与不变
2019-04-21
java guava 使用_Java8-Guava实战示例
2019-04-21