新浪微博
腾讯微博
会员列表
统计排行
基本信息
到访IP统计
管理团队
管理统计
在线会员
会员排行
版块排行
帖子排行
标签排行
帮助
下拉
用户名
电子邮箱
用户名
密 码
记住登录
登录
找回密码
注册
快捷通道
关闭
您还没有登录,快捷通道只有在登录后才能使用。
立即登录
还没有帐号? 赶紧
注册一个
首页
论坛
Qt下载
作品展
群组
个人中心
捐赠、管理与开发
邮件订阅
帖子
文章
日志
用户
版块
群组
帖子
搜索
QTCN开发网
>
Qt基础编程
>
关于qt多线程的问题
发帖
回复
返回列表
新帖
4831
阅读
2
回复
[提问]
关于qt多线程的问题
[复制链接]
上一主题
下一主题
离线
feiyang0725
UID:127496
注册时间
2012-02-14
最后登录
2023-12-27
在线时间
97小时
发帖
157
搜Ta的帖子
精华
0
金钱
1840
威望
167
贡献值
0
好评度
157
访问TA的空间
加好友
用道具
侠客
关闭
个人中心可以申请新版勋章哦
立即申请
知道了
加关注
发消息
只看楼主
倒序阅读
楼主
发表于: 2012-07-11
关键词:
问题
数据
线程
网络
多线程
我一个的QT程序里面有一个
网络
数据
包接收函数,函数功能就是一直等待数据包。。我就用一个
线程
启动这个网络函数,然后在主线程里面干别的。
现在遇到
问题
是,我点击关闭的时候后台程序依然在运行无法关闭。。
我的关闭函数
if(QThreadPool::globalInstance()->activeThreadCount())
QThreadPool::globalInstance()->thread()->exit();
event->accept();
这样无法关闭。因为我的网络函数线程会一直等待网络数据包,不会结束。。
图片:未命名.jpg
共
条评分
回复
举报
分享到
淘江湖
新浪
QQ微博
QQ空间
开心
人人
豆瓣
网易微博
百度
鲜果
白社会
飞信
离线
passion_wu
UID:118689
注册时间
2011-06-28
最后登录
2013-03-19
在线时间
164小时
发帖
189
搜Ta的帖子
精华
0
金钱
1955
威望
203
贡献值
0
好评度
194
访问TA的空间
加好友
用道具
侠客
加关注
发消息
只看该作者
1楼
发表于: 2012-07-13
如果你的线程没有进入事件循环exit是不起作用的。
如果你的线程是一个while循环,常用的方法是:
while(!bStop){
//do something
}
停止线程的时候一般做法是
bStop = true;
thread.waite();
共
条评分
回复
举报
离线
feiyang0725
UID:127496
注册时间
2012-02-14
最后登录
2023-12-27
在线时间
97小时
发帖
157
搜Ta的帖子
精华
0
金钱
1840
威望
167
贡献值
0
好评度
157
访问TA的空间
加好友
用道具
侠客
加关注
发消息
只看该作者
2楼
发表于: 2012-07-18
程序的是循环等待数据包,这个函数是网络库函数,我只能调用,没办法在里面return。
现在的想法是,在关闭事件中强制关闭所有线程。该怎么做?
共
条评分
回复
举报
发帖
回复
返回列表
http://www.qtcn.org/bbs
访问内容超出本站范围,不能确定是否安全
继续访问
取消访问
快速回复
限100 字节
您目前还是游客,请
登录
或
注册
进入高级模式
文字颜色
发 布
回复后跳转到最后一页
上一个
下一个
关闭
补充发布信息
验证码:
发 布
隐藏
快速跳转
站务及资讯
网站公告
新闻资讯
Qt官方发布
网站管理
Qt应用及资源
Qt 作品展
Qt代码秀
Qt应用版
Qt技术讨论区
Qt安装与发布
Qt中文处理
Qt基础编程
Qt QML开发
Qt嵌入式开发
Qt移动平台开发
其它技术开发讨论区
Qt图书专区
《C++ GUI Qt 4编程》(第2版)专栏
《Qt高级编程》专栏
《零基础学Qt4编程》专栏
《Qt设计模式》(第2版) 图书专栏
Python Qt GUI快速编程
Qt项目开发区
天池项目
Qt开放平台开发库
Qt版百度云笔记
机械CAD
Qt文档计划
QTCN网站系统开发
扇贝词典
非活跃项目区
社区中心
帖子回收站(Trash)
招聘、求职、供求、广告等
休闲娱乐
关闭
关闭
选中
1
篇
全选