首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

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

2013-08-01 
父进程中怎么判断子进程退出VTRP_TypeItemsm_vtrAllTypeItems(这个变量里面存的是子进程队列) vector类型

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

   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 }

热点排行