Windows资源监视器使用哪些Win32函数来检测已终止进程的磁盘和网络活动
Which Win32 Functions used by Windows Resource Monitor to detect both disk and network activities for terminated process?
在Windows资源监视器中有四个选项卡-CPU、MEMORY、DISK、NETWORK此程序向我们显示每个进程及其各自的PID(进程ID),这些进程涉及磁盘驱动器和网络的I/O活动。
问题
我使用的是Win32编程加上Visual C++(Visual Studio)。我创建了一个进程(使用CreateProcess函数)"VBS3_64.exe",假设我不知道它的内部行为,在我的程序中,我唯一的意图是创建该进程,让它执行几分钟,并使用Terminate或SendMessage功能终止它。在我逐步终止该进程后,Windows资源监视器显示CPU和内存使用情况均处于"Terminated">状态(灰色),但磁盘活动和网络活动此时都在运行(黑色)数分钟。甚至Windows任务管理器也没有显示该进程。
我使用Win32函数来检查进程是否仍在系统上运行,即使它被称为Terminate或force-kill,但所有这些函数都给了我相同的结果但只有资源监视器检测到其清理活动-磁盘活动和网络活动。
问题
- 终止的进程如何仍然在后台运行以进行清理,并且只有资源监视器通过其各自的PID检测到它
- 哪些Win32函数可以帮助我们检测此类进程?(资源监视器正在使用哪些Win32函数来检测已终止进程的后台/清理活动)
请参阅我在MSDN上提出的以下问题:-MSDN问题
你想得太难了。进程已终止。。。这意味着它不见了
资源监视器只是向您显示信息的时间稍长一些,这样您就有机会看到它。
相关文章:
- 使用 waitpid 时等待子进程终止
- 检测到由于操作系统内存不足而导致子进程终止
- 终端进程终止,退出代码为:1有什么方法可以修复它吗
- 使用system("./some_program"),当"some_program"死亡时,如何防止父进程终止?
- Ubuntu 服务器管道在第一次退出时停止进程终止
- win32 进程终止检测:WMI 与 WaitForSingleObject
- 如何停止DLL中的进程终止异常
- 使用终止进程终止"mstsc.exe"进程时出现错误代码(5)访问被拒绝
- 在 Linux 上使用 C++ 记录进程终止的原因
- 可以终止线程从另一个进程终止线程
- 进程等待另一进程终止时的信号处理
- MPI::COMM::Create之后的死锁(所有进程终止)
- 代码::阻止进程终止,状态为1
- libpqxx:如何在连接进程终止后重新连接到Postgresql数据库
- Fork进程:在子进程终止时恢复父进程(Linux)
- Qt处理进程终止
- 在所有子进程终止后,不能运行父进程
- 调用函数时进程终止
- C/ c++窗口中的进程终止
- 由于c++ bool函数的StackOverflowException导致进程终止