[Qt] deleteLater 和 delete

文章目录

deleteLater

deleteLater 是 QObject 类对象的成员函数,用于延迟删除一个 QObject 类对象。deleteLater 依赖于事件循环,调用 deleteLater 后本质是发送了一个 DeferrerDelete 事件,在事件循环处理中把对象删除。

deleteLater 会在当前对象的所有事件处理完成后再删除对象,deleteLater 会在当前对象的所有事件处理完成后再删除对象。

cpp 复制代码
//工作对象工作完成,停止线程
QObject::connect(workObject,&WorkObject::workFinished,[&](){
    workThread->quit();
    workThread->wait();
});
//工作线程停止,删除工作对象
QObject::connect(workThread,&QThread::finished,workObject,&WorkObject::deleteLater );
//工作对象销毁,删除工作线程
QObject::connect(workObject,&WorkObject::destroyed,workThread,&QThread::deleteLater );

delete

delete 是立即删除对象,对象的既有事件不再处理。

参考链接

Qt deleteLater

相关推荐
Aczone2810 分钟前
硬件(六)arm指令
开发语言·汇编·arm开发·嵌入式硬件·算法
YA3331 小时前
java设计模式二、工厂
java·开发语言·设计模式
逐雨~1 小时前
9.8C++作业
开发语言·c++
我爱挣钱我也要早睡!2 小时前
Java 复习笔记
java·开发语言·笔记
Yang-Never3 小时前
Kotlin协程 -> Job.join() 完整流程图与核心源码分析
android·开发语言·kotlin·android studio
TomCode先生5 小时前
c#动态树形表达式详解
开发语言·c#
高-老师6 小时前
基于R语言的物种气候生态位动态量化与分布特征模拟
开发语言·r语言·物种气候
大翻哥哥6 小时前
Python 2025:量化金融与智能交易的新纪元
开发语言·python·金融
weixin_437830947 小时前
使用冰狐智能辅助实现图形列表自动点击:OCR与HID技术详解
开发语言·javascript·ocr
疾风铸境7 小时前
qt+halcon开发相机拍照软件步骤
数码相机·qt·halcon·拍照