QThread对象会在线程结束后自己释放吗?

爱知菜 2012-02-06 11:45:27
我在主线程中new 了一个继承自QThread的类的对象,叫mthread

mthread->Start();

然后在线程运行结束后,它会自己释放掉吗?

如果不会,我应该 怎么释放它呢?

分不多,大家见谅,谢谢
...全文
1097 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
coderchenjingui 2012-09-18
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

connect(mthread, SIGNAL(finished()), mthread, SLOT(deleteLater()));
[/Quote]


class downLoadThread : public QThread
{
Q_OBJECT
public:
explicit downLoadThread(QObject *parent = 0);
void initArticle(const QString & name,const QString &url,const QString& saveDir);

signals:

public slots:

protected:
void run();

private:
QString articleName;
QString articleUrl;
QString savePathDir;

private slots:
void requestFinished(QNetworkReply *reply);

};


我用你说的方法好像不能完全释放,该怎么解决呢
碎炎 2012-02-06
  • 打赏
  • 举报
回复
没有指定父的话 要手动delete
爱知菜 2012-02-06
  • 打赏
  • 举报
回复
多谢楼上的大哥啊,教了不少东西
xiachm 2012-02-06
  • 打赏
  • 举报
回复
connect(mthread, SIGNAL(finished()), mthread, SLOT(deleteLater()));

16,173

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧