当前位置: 首页 > 网络知识

Qt QObject::killTimer: timers cannot be stopped from another thread

时间:2026-01-29 09:26:56

QObject::killTimer: timers cannot be stopped fr another thread

产生原因

1 定时器的事件处理所处的线程和调用定时器操作(方法)的线程不是同一个线程。 2 可以通过 qDebug() << QThread::currentThreadId()打印操作时的线程ID。

解决思路

把定时器的操作(方法:start(), stop())))和事件处理放在同一线程内操作。

解决方法

使用connect(ui>pushButton, SIGNAL(clicked()), w, SLOT(SlotShow()));而不是直接使用w>SlotShow();。

关键代码

1 //mainwindocpp 2 #include "mainwindoh" 3 #include "ui_mainwindoh" 4 #include <QThread> 5 #include <work.h> 6 #include <QDebug> 7 8 MainWindow::MainWindow(QWidget *parent) 9 : QMainWindow(parent) 10 , ui(new Ui::MainWindow) 11 20 21 MainWindow::~MainWindow() 22 28 29 void MainWindow::on_pushButton_2_clicked() 30
1 //workpp 2 #include "work.h" 3 #include <QDebug> 4 #include <QThread> 5 #include <QTimer> 6 7 Work::Work(QObject *parent) : 8 QObject(parent) 9 14 15 Work::~Work() 16 19 20 void Work::SlotShow() 21



上一篇:Qt .pro文件详解
下一篇:Qt QTextStream 类(文本流)和 QDataStream 类(数据流)
Qt
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素