社区
进程/线程/DLL
帖子详情
怎么知道一个进程是否已经结束?
fengzi_zhu
2003-03-17 05:09:15
在CreateProcess()之后并没有直接CloseHandle().那么该进程结束时其进程对象并没有释放。这应该是对的。如果进程建立之后马上释放其句柄,保存其ID,一段时间后怎么知道这个ID是否还是以前进程的ID?也就是说不用WAITFORSINGLEOBJECT()怎么知道一个进程是否已经结束。
接http://expert.csdn.net/Expert/topic/1505/1505425.xml?temp=.5620386
...全文
82
11
打赏
收藏
怎么知道一个进程是否已经结束?
在CreateProcess()之后并没有直接CloseHandle().那么该进程结束时其进程对象并没有释放。这应该是对的。如果进程建立之后马上释放其句柄,保存其ID,一段时间后怎么知道这个ID是否还是以前进程的ID?也就是说不用WAITFORSINGLEOBJECT()怎么知道一个进程是否已经结束。 接http://expert.csdn.net/Expert/topic/1505/1505425.xml?temp=.5620386
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fengzi_zhu
2003-03-21
打赏
举报
回复
To JoeRen(地球发动机)
至于为什么不保留创建进程时的句柄的原因是: 我的主程序,创建了许多的子进程,我想让这些子进程结束后就释放其内核对象(如果主程序中没有释放子进程的句柄时它的核心对象是不会被释放的),而且也没有时间等他们一一结束.
JoeRen
2003-03-19
打赏
举报
回复
1、进程ID很少重用
2、OpenProcess失败说明进程已经结束
3、如果成功当然也不能说明他代表以前的进程;但是有一些手段可以获得有关它的更多信息,例如获取其模块句柄等等,可以作为参考的依据。
4、为什么不保留创建进程时的句柄呢?这是最简单易行的方法。
fengzi_zhu
2003-03-19
打赏
举报
回复
现在的问题就是不知道该进程是否已经结束了,此ID时候有效,或者它是否还是代表以前的那个进程。
JoeRen
2003-03-19
打赏
举报
回复
有ID就可以调用OpenProcess换成句柄了阿
fengzi_zhu
2003-03-19
打赏
举报
回复
我说了 没有句柄,只有ID,就不能用WaitForSingleObject()了
zhuzy2001
2003-03-18
打赏
举报
回复
DWORD WaitForSingleObject(
HANDLE hHandle, // handle to object
DWORD dwMilliseconds // time-out interval
);
是否可以?
fengzi_zhu
2003-03-18
打赏
举报
回复
除了检查进程列表就没有别的帮法了吗?
In355Hz
2003-03-17
打赏
举报
回复
不要 CloseHandle 释放其句柄, 一段时间后调用 GetExitCodeProcess ,如果取回的 ExitCode 不是 STILL_ACTIVE,就说明该进程已经结束。
halk
2003-03-17
打赏
举报
回复
CloseHandle后,子进程就跟父进程断绝联系了。这时候只能通过定期检查进程列表来确认该进程是否结束。获得进程列表的方法有几种,我喜欢用ToolHelp.
shuker
2003-03-17
打赏
举报
回复
或者也可以使用OpenProcess来得到进陈句柄的
shiyongfan
2003-03-17
打赏
举报
回复
In355Hz说得好极了,高手。同意!!!并强烈建议提出问题者采用此方法!
对线程亦适用。只不过是GetExitCodeThread()
java 判断
进程
结束
_java怎么样判断
一个
进程
是否
已近
结束
?
我写了
一个
小程序,这个程序执行到一半的时候会调用
一个
外部程序进行相关操作,我必须等这个外部程序运行
结束
了以后才能执行以下的语句。请问有什么函数可以检测这个外部
进程
是否
已近...我写了
一个
小程序,这个程序...
结束
进程
和
结束
进程
树有什么区别?
结束
进程
”与“
结束
进程
树”是用来
结束
一个
或多个
进程
用的。
进程
树也许你是头回听说,我这里想解释一下。所谓
进程
树实际上就是一组
进程
,而这一组
进程
(子
进程
)是由
一个
进程
(父
进程
)创建的。当你选择“
结束
进程
...
踩坑-父
进程
怎么
知道
子
进程
是否
结束
该方法主要是用于实现父子
进程
同时运行,且父
进程
能查看子
进程
是否
结束
从网上看,大部分人都说在父
进程
中使用kill(pid, 0) (其中pid为子
进程
id)来获取...通过使用waitpid()和wait()函数的等待子
进程
结束
后父...
linux通过
结束
进程
方法,linux
结束
进程
的方法有哪些?
linux
结束
进程
的方法有哪些?发布时间:2020-05-18 09:25:14来源:亿速云...一、定位
进程
定位
进程
可以使用top命令或者是ps命令,具体如下:1、top命令可以实时动态地查看系统的整体运行情况,是
一个
综合了多方信息...
如何判断
进程
是否
结束
?
我想判断一下
一个
应用程序
是否
结束
,应该怎么实现?下面是列举
进程
的代码,改一下就形了,判断你要的
进程
在不再里面就行了 HANDLE SnapShot=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); if(SnapShot==NULL)...
进程/线程/DLL
15,471
社区成员
49,182
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章