qt中使用C++thread
win.h
#ifndef WIN_H #define WIN_H #include <QWidget> #include <thread> #include <chrono> #include <QDebug> class Win : public QWidget { Q_OBJECT public: Win(QWidget *parent = nullptr); ~Win(); private: void hello(); //线程要调用的函数 std::thread* t; //注意:这个变量不要在构造函数中定义成局部变量,否则构造函数结束,线程对象就释放了 }; #endif // WIN_H
win.cpp
#include "win.h" Win::Win(QWidget *parent) : QWidget(parent) { this->resize(400,300); t=new std::thread(&Win::hello,this); //创建线程并启动 //t 线程名 //参数1:线程要执行的函数地址 } Win::~Win() { } void Win::hello() { for (int i = 0; i < 30; i++) { qDebug() << "子线程:" << i; std::this_thread::sleep_for(std::chrono::seconds(2)); //本线程休眠2秒 } }
工程下载地址:链接:https://pan.baidu.com/s/18CQTU_i8WcJfif1CoUQmRA 提取码:6666
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了