读书人

父进程中如何判断子进程退出

发布时间: 2013-08-01 15:23:18 作者: rapoo

父进程中怎么判断子进程退出

VTRP_TypeItemsm_vtrAllTypeItems;(这个变量里面存的是子进程队列) vector类型

每个元素的类型是下面的一个结构体:
struct DS_ProcessItem :
{
QProcess*pProcess;

QStringstrProcessName;// 可执行文件路径及文件名
QStringstrExeFile;// 可执行文件路径及文件名
QStringstrParam;// 命令行参数
boolbNewWindow;
boolbShow;

boolbRegisted;
boolbReserved;

QStringstrExtraData;// 扩展参数

QDateTimedtUpdateTime;

};

本来想根据子进程的pid判断它是否退出,但是
根据 QProcess的 PID()方法获得子进程的PID,但是子进程退出后,pid也不会变为0,不知道还有什么办法。 C++ qt 子进程退出
[解决办法]
绑定QProcess的 finished 信号...
[解决办法]
1. 把QProcess的finished信号连接到自己的槽函数来识别


void finished(int exitCode, QProcess::ExitStatus exitStatus)

2. 把QProcess的stateChanged信号连接到自己的槽函数来识别

void stateChanged(QProcess::ProcessState newState)
enum ProcessState { NotRunning, Starting, Running }

读书人网 >QT开发

热点推荐