Visual C ++中的进程RAM使用

时间:2010-10-11 19:39:16

标签: visual-c++ memory-management

伙计们,我正在使用 GetProcessMemoryInfo 函数来获取在Windows 7上运行的Visual Studio 2008中当前进程的详细信息。输出填充在PROCESS_MEMORY_COUNTERS结构中以下成员的名单。

  • CB
  • PageFaultCount
  • PeakWorkingSetSize
  • WorkingSetSize
  • QuotaPeakPagedPoolUsage
  • QuotaPagedPoolUsage
  • QuotaPeakNonPagedPoolUsage
  • QuotaNonPagedPoolUsage
  • PagefileUsage
  • PeakPagefileUsage

我应该使用这些成员中的哪一个来获取进程的RAM使用情况? 有没有其他方法可以使用Microsoft Visual C ++获取进程的内存使用情况?

1 个答案:

答案 0 :(得分:1)

使用WorkingSetSize检索每个进程的物理RAM使用情况。根据{{​​3}}:

  

流程的“工作集”是   当前可见的内存页面集   到物理RAM内存的过程。   这些页面是常驻和可用的   对于没有使用的应用程序   触发页面错误。

没有其他方法可以获得当前工作集大小而不是您正在使用的工作集大小。有关详细信息,请参阅MSDN docs for the underlying Win32 API