如何检查进程是否正在运行

Tim*_*Cit 3 qt

我正在使用以下代码开始一个过程

 QProcess* process = new QProcess();
 process->start(Path);
Run Code Online (Sandbox Code Playgroud)

start方法将启动第三方应用程序.

如果进程已在运行,我不应该再次调用process-> start(Path).

进程指针是类的私有成员.

jdi*_*jdi 6

来自QProcess文档 ......

至少有3种方法可以检查QProcess实例是否正在运行.

QProcess.pid():如果它正在运行,则pid将> 0

QProcess.state():再次检查ProcessState枚举以查看其QProcess :: NotRunning

QProcess.atEnd():如果这是真的,它不会运行

如果其中任何一个没有按预期工作,那么您需要发布该示例的特定案例.