C++ QThread::终止vs终止
我在QThread(C++中)中运行了一个BASH脚本(QProcess阻塞)。这个BASH脚本包含大量文件,可以运行1/2小时 如果用户想关闭我的程序,我需要终止BASH脚本。但是怎么做呢?QThread::Quit将在处理信号之前等待BASH程序终止,QThread::terminate文档称它可能会立即终止线程 我想要“kill-9myscript”的等价物。有没有合适的方法来实现这一点C++ QThread::终止vs终止,c++,qt,kill,qthread,qprocess,C++,Qt,Kill,Qthread,Qprocess,我在QThread(C++中)中运行了一个BASH脚本(QProcess阻塞)。这个BASH脚本包含大量文件,可以运行1/2小时 如果用户想关闭我的程序,我需要终止BASH脚本。但是怎么做呢?QThread::Quit将在处理信号之前等待BASH程序终止,QThread::terminate文档称它可能会立即终止线程 我想要“kill-9myscript”的等价物。有没有合适的方法来实现这一点 不要使用额外的线程。没必要 切勿使用任何waitForXxx方法 使用QProcess::kill终止
waitForXxx
方法QProcess::kill
终止进程QProcess
的信号,在流程改变状态(如完成)时获得通知不看代码很难说,但我认为最好通过非阻塞
QProcess
(使用信号/插槽跟踪状态更改)运行bash
脚本,然后使用或(如果需要强制终止该进程)。我认为QThread
只是在这里碍事。