我想获得该过程的私人工作集。我为此目的使用了GetProcessMemoryInfo()
方法,无法从PROCESS_MEMORY_COUNTERS
或PROCESS_MEMORY_COUNTERS_EX
结构中检索私有工作集。我试着用
WorkingSetSize
结构的PROCESS_MEMORY_COUNTERS_EX
字段,但此字段的值等于可共享和私有工作集的总和。是否有可能只获得C ++语言的可共享或私有工作集?
以下是我使用的代码:
PROCESS_MEMORY_COUNTERS_EX processMem;
if (GetProcessMemoryInfo(::GetCurrentProcess(), (PROCESS_MEMORY_COUNTERS *)&processMem, sizeof(processMem))) {
SIZE_T processRam = processMem.WorkingSetSize;
}
此外,我尝试获取processMem.PrivateUsage
字段,但此值不等于我的流程'私人工作集大小。