winnt.h) (JOBOBJECT_EXTENDED_LIMIT_INFORMATION 结构

包含作业对象的基本和扩展限制信息。

语法

typedef struct _JOBOBJECT_EXTENDED_LIMIT_INFORMATION {
  JOBOBJECT_BASIC_LIMIT_INFORMATION BasicLimitInformation;
  IO_COUNTERS                       IoInfo;
  SIZE_T                            ProcessMemoryLimit;
  SIZE_T                            JobMemoryLimit;
  SIZE_T                            PeakProcessMemoryUsed;
  SIZE_T                            PeakJobMemoryUsed;
} JOBOBJECT_EXTENDED_LIMIT_INFORMATION, *PJOBOBJECT_EXTENDED_LIMIT_INFORMATION;

成员

BasicLimitInformation

包含基本限制信息的 JOBOBJECT_BASIC_LIMIT_INFORMATION 结构。

IoInfo

保留。

ProcessMemoryLimit

如果JOBOBJECT_BASIC_LIMIT_INFORMATION结构的 LimitFlags 成员指定JOB_OBJECT_LIMIT_PROCESS_MEMORY值,则此成员指定可由进程提交的虚拟内存的限制。 否则,将忽略此成员。

JobMemoryLimit

如果JOBOBJECT_BASIC_LIMIT_INFORMATION结构的 LimitFlags 成员指定JOB_OBJECT_LIMIT_JOB_MEMORY值,则此成员指定可为作业提交的虚拟内存的限制。 否则,将忽略此成员。

PeakProcessMemoryUsed

与作业关联的任何进程使用的峰值内存。

PeakJobMemoryUsed

当前与作业关联的所有进程的峰值内存使用量。

注解

系统不断跟踪 PeakProcessMemoryUsedPeakJobMemoryUsed 的值 。 这样就可以知道每个作业的内存使用量峰值。 可以使用此信息通过 JOB_OBJECT_LIMIT_PROCESS_MEMORYJOB_OBJECT_LIMIT_JOB_MEMORY 值建立内存限制。

请注意,作业内存和进程内存限制在操作中非常相似,但它们是独立的。 可以将作业范围限制设置为 100 MB,每个进程的限制为 10 MB。 在此方案中,任何一个进程都不能提交超过 10 MB,与作业关联的进程集永远不能超过 100 MB。

若要在允许进程继续提交内存的同时注册作业已超出其峰值内存限制的通知,请将 SetInformationJobObject 函数与 JobObjectNotificationLimitInformation 信息类一起使用。

要求

   
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 winnt.h (包括 Windows.h)

另请参阅

JOBOBJECT_BASIC_LIMIT_INFORMATION

JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION

QueryInformationJobObject

SetInformationJobObject