UI控件为什么不能使用多线程
2018-01-18 14:15
281 查看
1.MFC
http://blog.csdn.net/xsckernel/article/details/51436572
http://blog.csdn.net/xbmoxia/article/details/16981243
PS:在MFC主线程里创建子线并传入this指针,在子线程操作控件不是线程安全的,避免这么做。正确做法是向子线程传入m_hWnd句柄参数,自建消息,使用Postmessage将消息抛给主线程处理,这样有消息循环去处理消息队列。另,最好使用Postmessage而不是Sendmessage,前者虽然不是立即处理消息但立即返回,后者相反立即处理消息但是阻塞等待消息处理完成。
2.duilib
http://blog.csdn.net/Skilla/article/details/41245405
PS:DUilib对多线程支持不好,原因是Duilib里面的控件是用数组管理的全局变量,不能进行多线程访问,加锁又很麻烦。
http://blog.csdn.net/xsckernel/article/details/51436572
http://blog.csdn.net/xbmoxia/article/details/16981243
PS:在MFC主线程里创建子线并传入this指针,在子线程操作控件不是线程安全的,避免这么做。正确做法是向子线程传入m_hWnd句柄参数,自建消息,使用Postmessage将消息抛给主线程处理,这样有消息循环去处理消息队列。另,最好使用Postmessage而不是Sendmessage,前者虽然不是立即处理消息但立即返回,后者相反立即处理消息但是阻塞等待消息处理完成。
2.duilib
http://blog.csdn.net/Skilla/article/details/41245405
PS:DUilib对多线程支持不好,原因是Duilib里面的控件是用数组管理的全局变量,不能进行多线程访问,加锁又很麻烦。
相关文章推荐
- 编辑任务EditorTask控件为什么不能使用
- Android GridView 的item 使用 Button,imagebutton 等ui控件后,不能响应OnItemClick()事件
- UI控件和代理为什么使用weak
- c#中跨线程调用windows窗体控件 .我们在做winform应用的时候,大部分情况下都会碰到使用多线程控制界面上控件信息的问题。然而我们并不能用传统方法来做这个问题,下面我将详细的介绍。
- 为什么不能使用MS的office
- 使用IShellFolder::EnumObjects()不能正确枚举虚目录“我的电脑”下的对象,为什么?
- 在用数据绑定的时候我为什么不能把焦点移出(Tab out)我的控件?(译)
- 解决多线程操作控件时可能出现的异常:“在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级”
- 为什么Java中不能使用Double Checked Locking模式
- WeifenLuo.WinFormsUI控件使用的一个例子
- 使用 ConTest 进行多线程单元测试 - 为什么并行测试很困难以及如何使用 ConTest 辅助测试
- 验证控件不能使用的问题
- jsp request,正确使用. 为什么不能使用 getAttribute 得到保存的数据
- 不能实现或功能冲突 -- Intersoft WebUI Studio.NET 2007控件使用
- 关于多站点一些控件不能正常使用问题
- windows 2003为什么不能使用移动硬盘
- 为什么使用多线程?
- RegularExpressionValidator 控件为什么不能验证为空呢?
- [转贴]不能显示树型或树控件使用不正常的解决办法
- photoshop中为什么会出现"不能使用文字工具,因为暂存盘已满"?