PROCESS_MEMORY_COUNTERS_EX structure (psapi.h)

Contains extended memory statistics for a process.

Syntax

typedef struct _PROCESS_MEMORY_COUNTERS_EX {
  DWORD  cb;
  DWORD  PageFaultCount;
  SIZE_T PeakWorkingSetSize;
  SIZE_T WorkingSetSize;
  SIZE_T QuotaPeakPagedPoolUsage;
  SIZE_T QuotaPagedPoolUsage;
  SIZE_T QuotaPeakNonPagedPoolUsage;
  SIZE_T QuotaNonPagedPoolUsage;
  SIZE_T PagefileUsage;
  SIZE_T PeakPagefileUsage;
  SIZE_T PrivateUsage;
} PROCESS_MEMORY_COUNTERS_EX;

Members

cb

The size of the structure, in bytes.

PageFaultCount

The number of page faults.

PeakWorkingSetSize

The peak working set size, in bytes.

WorkingSetSize

The current working set size, in bytes.

QuotaPeakPagedPoolUsage

The peak paged pool usage, in bytes.

QuotaPagedPoolUsage

The current paged pool usage, in bytes.

QuotaPeakNonPagedPoolUsage

The peak nonpaged pool usage, in bytes.

QuotaNonPagedPoolUsage

The current nonpaged pool usage, in bytes.

PagefileUsage

The Commit Charge value in bytes for this process. Commit Charge is the total amount of private memory that the memory manager has committed for a running process.

Windows 7 and Windows Server 2008 R2 and earlier:  PagefileUsage is always zero. Check PrivateUsage instead.

PeakPagefileUsage

The peak value in bytes of the Commit Charge during the lifetime of this process.

PrivateUsage

Same as PagefileUsage. The Commit Charge value in bytes for this process. Commit Charge is the total amount of private memory that the memory manager has committed for a running process.

Requirements

Requirement Value
Minimum supported client Windows Vista, Windows XP with SP2 [desktop apps only]
Minimum supported server Windows Server 2008, Windows Server 2003 with SP1 [desktop apps only]
Header psapi.h

See also

GetProcessMemoryInfo

Memory Performance Information

Process Memory Usage Information

Working Set Information