社区
进程/线程/DLL
帖子详情
子线程消息队列问题,请教。
Dream_soft
2001-08-20 06:45:56
须在主线程和子线程间通讯,希望能异步进行,主线程将消息post到子线程消息队列后立即返回。子线程自队列中读出消息,进行处理。这种情况是否子线程一定要有自己的窗口?还是可以有可以支接发送到线程的方式?仿佛MFC的UI线程自己就是带有消息队列的。请了解的朋友介绍这种情况下能使用的通讯方式,兄弟这里先行谢过。
...全文
242
8
打赏
收藏
子线程消息队列问题,请教。
须在主线程和子线程间通讯,希望能异步进行,主线程将消息post到子线程消息队列后立即返回。子线程自队列中读出消息,进行处理。这种情况是否子线程一定要有自己的窗口?还是可以有可以支接发送到线程的方式?仿佛MFC的UI线程自己就是带有消息队列的。请了解的朋友介绍这种情况下能使用的通讯方式,兄弟这里先行谢过。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
blue_teeth
2001-10-09
打赏
举报
回复
如果,我的那个子线程总是以阻塞的方式不停的读取另一个进程的数据,每读到100组数据,才向数据库服务器发送一次数据,然后回来继续用阻塞的方式读取这个那个进程的数据,但
1。自己的主线程如果要求退出,则子线程必须做完收尾工作(至少要把已经在自己缓冲区里的数据发送到数据库服务器中)以后退出
请问,怎么用消息机制来解决???
tryibest
2001-08-21
打赏
举报
回复
什么是ui线程?
richen
2001-08-20
打赏
举报
回复
我和WhiteWaterBlueSky(疯狂数码)回答的完整准确,建议发给我80,其余送给疯狂数码
哈啊哈哈
数码,行不?
WhiteWaterBlueSky
2001-08-20
打赏
举报
回复
UI线程不一定要有自己的窗口的!
CWinThread类的Run方法是一个消息循环,AfxBeginThread启动线程并且
进入了该消息循环,消息循环可以接受两种类型的消息,一是由
SendMessage或着PostMessage发到窗口的消息,二是直接由
PostThreadMessage发到线程的消息!
richen
2001-08-20
打赏
举报
回复
MFC提供的UI线程只不过帮你GetMessage,然后通过消息映射宏将消息派发给处理函数。
主子线程都不必有自己的窗口,通过PostThreadMessge()照样通信
如果主子线程都用MFC的UI线程的话,只影射自定义消息即可
否则,在接收消息的子线程中,用GetMessage()自己去队列取消息即可,但此时牵涉到同步问题。
建议都用UI线程(不必有窗口)。
蒋晟
2001-08-20
打赏
举报
回复
用户界面线程还可以通过ON_THREAD_MESSAGE映射处理消息。参见CWinThread::Run
蒋晟
2001-08-20
打赏
举报
回复
在MFC中有两种线程,用户界面线程和工作线程。工作线程没有自己的窗口和消息循环。
用户界面线程中的消息由主窗口m_pMainWnd处理。这个窗口默认是创建此线程的主窗口,但是可以更改为自己的窗口。
dcz
2001-08-20
打赏
举报
回复
有两种线程:WorkingThread, UIThread。
Working Thread 没有消息队列,从而不能发消息到该类线程。
User-Interface Thread 含有消息队列,MFC 的 UI 线程就是这种线程。
UI 线程通讯好解决。Working Thread 通讯比较麻烦,只好用同步对象了。
主
线程
跟
子
线程
怎么通讯 java
学到多
线程
,编了一个简单地电脑城进出货模拟系统。 代码有点长,主要部分如下所述: ...限于篇幅
问题
,摘录主要代码如下: --------------------------厂家类-----------------------------...
iOS 多
线程
:『GCD』详尽总结
GCD 任务和队列3. GCD 的使用步骤4. GCD 的基本使用(六种组合不同区别,队列嵌套情况区别,相互关系形象理解)5. GCD
线程
间的通信6. GCD 的其他方法(栅栏方法:dispatch_barrier_async、延时执行方法:dispatch_...
python多
线程
原理qthread_QThread多
线程
的
问题
继续
请教
个
问题
。任务WORK在thread里面运行后,如果想停止任务(而不是简单终止
线程
),用
线程
安全的方式用槽信号来触发任务停止条件时,不起作用,因为
线程
内需要等任务(dowork)自然完成后,才会接收其他槽信号队列。...
iOS多
线程
:『GCD』详尽总结
前言 学如逆水行舟,...GCD 的基本使用(六种组合不同区别,队列嵌套情况区别,相互关系形象理解) GCD
线程
间的通信 GCD 的其他方法(栅栏方法:dispatch_barrier_async、延时执行方法:dispatch_after、一次性
IOS 多
线程
:『GCD』详尽总结
执行上面的代码会导致 串行队列中追加的任务 和 串行队列中原有的任务 两者之间相互等待,阻塞了『串行队列』,最终造成了串行队列所在的
线程
(
子
线程
)死锁
问题
。 主队列造成死锁也是基于这个原因,所以,这也...
进程/线程/DLL
15,471
社区成员
49,182
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章