资源简介
qt 多线程 防止主线程做循环操作导致界面假死。试过多线程的几种方法,只有这个方法可行。代码亲测可行。在子线程死循环,界面正常不死!!!
代码片段和文件信息
#include “dialog.h“
#include “ui_dialog.h“
#include
#include
#include
bool stop=false;
QThread t;
Dialog::Dialog(QWidget *parent) :
QDialog(parent)
ui(new Ui::Dialog)
{
ui->setupUi(this);
}
Dialog::~Dialog()
{
delete ui;
}
Worker::Worker()
{
}
void Worker::dowork()
{
stop=false;
while(!stop)
{
time_t start=clock();
qDebug()<<“Worker::onTimeout get called from?: “< time_t end=clock();
qDebug()<<(double)(end-start)/CLOCKS_PER_SEC;
//Sleep(100000);
}
}
void Dialog::on_Btn_Start_d_clicked()
{
qDebug()<<“From main thread: “<
Worker work;
//Qobject::connect(&timer SIGNAL(timeout()) &work SLOT(dowork()));
// timer.start(0);
work.moveToThread(&t);
Qobject::connect(&tSIGNAL(started())&workSLOT(dowork()));
t.start();
//exec();
//t.quit();
// t.wait();
//work.stop=true;
//qDebug()<<“thread stop“;
this->exec();
}
void Dialog::on_Btn_Stop_d_clicked()
{
stop=true;
t.quit();
t.wait();
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-06-14 10:53 multithreading\
文件 48 2018-06-14 10:53 multithreading\readme.txt
目录 0 2018-06-14 10:18 multithreading\test2\
文件 1163 2018-05-22 11:47 multithreading\test2\dialog.cpp
文件 477 2018-05-22 11:33 multithreading\test2\dialog.h
文件 980 2018-05-22 11:33 multithreading\test2\dialog.ui
文件 208 2018-05-22 11:32 multithreading\test2\dialog2.cpp
文件 281 2018-05-22 11:32 multithreading\test2\dialog2.h
文件 1542 2018-05-22 11:32 multithreading\test2\dialog2.ui
文件 207 2018-05-22 11:21 multithreading\test2\main.cpp
文件 550 2018-05-22 11:36 multithreading\test2\mainwindow.cpp
文件 491 2018-05-22 11:36 multithreading\test2\mainwindow.h
文件 1609 2018-05-22 11:00 multithreading\test2\mainwindow.ui
文件 1224 2018-05-22 11:32 multithreading\test2\test2.pro
文件 23887 2018-06-14 10:18 multithreading\test2\test2.pro.user
- 上一篇:声光控路灯控制课程设计
- 下一篇:模拟病人排队看病实验程序代码
相关资源
- 桌面弹球游戏代码以及个人总结
- Qt自定义搜索框代码实现
- 用QT自己写的贪吃蛇源代码
- 一个多线程同步读写的小程序
- Qt调用日历
- 多线程Socket.
- 多线程统计多个文件的单词数目
- 操作系统进程管理与内存管理QT实现界
- qt 实现画树功能
- QtWebEngine-mp4
- Phong光照及在GLSL中使用函数
- 现代OpenGL+Qt:绘制可旋转、带光照效
- 现代OpenGL+Qt学习笔记之四:使用Unif
- 现代OpenGL+Qt学习笔记之三:显示一个
- 现代OpenGL+Qt学习笔记之二:程序框架
- Qt 类层次结构图
- qt扫雷游戏
- QT和数据库登录界面
- 线程间通信方式3:消息传递方式
- qt自定义工具栏,类似word
- Qt实现动态时钟 翻转 滑动 翻页
- 子QWidget上画图
- 图片图片工具——TinyPng多线程压缩
- qt libusb U盘通信
- Qt 访问redis接口代码
- QT使用QCustomPlot绘制曲线并动态显示曲
- 顶角判别法识别多边形的凸凹性,并
- QUdpSocket 多线程编程 moveToThread
- qt udp多线程收发数据
- 超酷的Qt消息提示框,仿126邮箱登录提
评论
共有 条评论