如何获取当前进程的当前 I/O 传输计数?

问题描述 投票:0回答:0

我正在分析一个应用程序,同时编写用于测量磁盘和内存使用情况的代码 我意识到函数

GetProcessIoCounters(HANDLE hProcess, PIO_COUNTERS lpIoCounters)
只检索到现在为止执行的“总”读/写传输和操作。

有什么方法可以检索到这些信息吗?

我尝试使用

GetProcessIoCounters
但它只检索了指定进程到目前为止执行的总操作和传输,而我期待像
GetProcessMemoryInfo
函数这样的实时行为,它用于检索指定进程使用的内存量实时处理。我在网上搜索了一下,除了
DeviceIoControl
之外找不到任何答案,它不是通过进程分离来检索磁盘上的所有I/O。

编辑:我意识到我可以通过计算两个

GetProcessIoCounters
请求之间的差异除以经过的时间来生成该信息!但我想知道为什么这个功能与其他与检索硬件使用情况相关的功能不同。

c++ performance winapi
© www.soinside.com 2019 - 2024. All rights reserved.