我正在使用 QProcess 对象列表来跟踪一些需要以用户定义的时间间隔启动/停止的进程。
我可以启动和停止进程。但是当我使用以下方法(伪代码)停止进程时,就会出现问题:
process->start("PathToProcess","Some Arguments");
//Do some stuff.
process->terminate();
但是,如果我尝试在其他时间再次启动该过程,则会收到错误消息:
QProcess::start: Process is already running
我可以执行 ps -ef|grep processName 并发现它确实已经死了,但它处于失效状态,我认为这会阻止我再次启动它。
我需要做些什么来防止这种失效状态,或者删除失效的方法,以便我可以在不重建的情况下再次启动我的过程?