查看完整版本: [-- QThread多线程中调用DOS命令 --]

QTCN开发网 -> Qt基础编程 -> QThread多线程中调用DOS命令 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

lwei24 2023-01-09 14:36

QThread多线程中调用DOS命令

如题,在QThread子线程中调用QProcess运行DOS命令,其中cmd是DOS命令
  1. m_process->start(cmd);
    m_process->waitForFinished(-1);

在关闭窗口时,想退出线程,并一起中断QProcess运行的命令,但是这个好像没有办法中断。不知道各位大佬是怎么解决这个问题的呢?

wanger233 2023-01-10 11:09
析构函数里关闭这个线程

Widget::~Widget()
{
    m_process->close();
}

或者  初始化时 将窗口设为父
QProcess * m_process = new QProcess(this);

最好确认下析构被调用了 加个输出看看

lwei24 2023-01-12 11:06
wanger233:析构函数里关闭这个线程
Widget::~Widget()
{
    m_process->close();
....... (2023-01-10 11:09) 

试了,不过好像效果不是很好。

zy1233 2023-01-12 11:13
关闭窗口时调用QProcess::kill()

lwei24 2023-01-13 14:19
zy1233:关闭窗口时调用QProcess::kill() (2023-01-12 11:13) 

好的,谢谢


查看完整版本: [-- QThread多线程中调用DOS命令 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled