QT -- (工业相机)窗口关闭后进程不停止/内存不释放的问题

用QT写一个基于工业相机的测试软件时遇到的一个问题,窗口关闭后进程不结束,且内存不释放。

经过一通操作后,什么delete、exit()、release等都用了,无解。。

最后终于找到了解决方法。

先简单写一下概况:

previous:

软件启动后,就将相机的帧与主程序的信号槽连接了,软件中其他处理都要用到帧数据

//连接图像信号与槽
connect(&m_Camera,&CCamera_Tupu::SgalSendOriData,this, &MainWindow::SlotGetFrame,Qt::BlockingQueuedConnection);

遇到的问题:

运行后,软件一切正常,但是运行停止后,进程不停止,且内存不释放

 解决方法:

在析构函数处加上断开连接代码

MainWindow::~MainWindow()
{
    disconnect(&m_Camera,&CCamera::SgalSendOriData,this, &MainWindow::SlotGetFrame);
    QThread::msleep(100);
    delete m_pdata;
    delete ui;
}

问题解决。

原文地址:https://www.cnblogs.com/zzzsj/p/14610300.html