GetProcessWorkingSetSizeEx 函数 (memoryapi.h)

检索指定进程的最小和最大工作集大小。

语法

BOOL GetProcessWorkingSetSizeEx(
  [in]  HANDLE  hProcess,
  [out] PSIZE_T lpMinimumWorkingSetSize,
  [out] PSIZE_T lpMaximumWorkingSetSize,
  [out] PDWORD  Flags
);

参数

[in] hProcess

将获取其工作集大小的进程的句柄。 句柄必须具有 PROCESS_QUERY_INFORMATIONPROCESS_QUERY_LIMITED_INFORMATION 访问权限。 有关详细信息,请参阅 进程安全和访问权限

Windows Server 2003: 句柄必须具有 PROCESS_QUERY_INFORMATION 访问权限。

[out] lpMinimumWorkingSetSize

指向变量的指针,该变量接收指定进程的最小工作集大小(以字节为单位)。 每当进程处于活动状态时,虚拟内存管理器会尝试将至少如此多的内存保留在进程中。

[out] lpMaximumWorkingSetSize

指向变量的指针,该变量接收指定进程的最大工作集大小(以字节为单位)。 每当进程处于活动状态时,当内存不足时,虚拟内存管理器会尝试在进程中保留不超过此多的内存。

[out] Flags

控制最小和最大工作集大小的强制实施的标志。

含义
QUOTA_LIMITS_HARDWS_MIN_DISABLE
0x00000002
如果内存需求较高,工作集可能会低于最小工作集限制。
QUOTA_LIMITS_HARDWS_MIN_ENABLE
0x00000001
工作集不会低于最小工作集限制。
QUOTA_LIMITS_HARDWS_MAX_DISABLE
0x00000008
如果内存充足,工作集可能会超过最大工作集限制。
QUOTA_LIMITS_HARDWS_MAX_ENABLE
0x00000004
工作集不会超过最大工作集限制。

返回值

备注

进程的“工作集”是物理 RAM 内存中进程当前可见的内存页集。 这些页是常驻的,可供应用程序使用,而不会触发页面错误。 最小和最大工作集大小会影响进程的虚拟内存分页行为。

要求

要求
最低受支持的客户端 Windows Vista [桌面应用 | UWP 应用]
最低受支持的服务器 Windows Server 2003 [桌面应用 | UWP 应用]
目标平台 Windows
标头 memoryapi.h (包括 Windows Vista 上的 Windows.h、Windows 7、Windows Server 2008 Windows Server 2008 R2)
Library onecore.lib
DLL Kernel32.dll

另请参阅

进程工作集

进程

SetProcessWorkingSetSizeEx