Struct JOBOBJECT_EXTENDED_LIMIT_INFORMATION
- Namespace
- Windows.Win32.System.JobObjects
- Assembly
- Ecng.Interop.dll
Contains basic and extended limit information for a job object.
public struct JOBOBJECT_EXTENDED_LIMIT_INFORMATION
- Inherited Members
- Extension Methods
Remarks
The system tracks the value of PeakProcessMemoryUsed and PeakJobMemoryUsed constantly. This allows you know the peak memory usage of each job. You can use this information to establish a memory limit using the JOB_OBJECT_LIMIT_PROCESS_MEMORY or JOB_OBJECT_LIMIT_JOB_MEMORY value. Note that the job memory and process memory limits are very similar in operation, but they are independent. You could set a job-wide limit of 100 MB with a per-process limit of 10 MB. In this scenario, no single process could commit more than 10 MB, and the set of processes associated with a job could never exceed 100 MB. To register for notifications that a job has exceeded its peak memory limit while allowing processes to continue to commit memory, use the SetInformationJobObject function with the JobObjectNotificationLimitInformation information class.
Fields
BasicLimitInformation
A JOBOBJECT_BASIC_LIMIT_INFORMATION structure that contains basic limit information.
public JOBOBJECT_BASIC_LIMIT_INFORMATION BasicLimitInformation
Field Value
IoInfo
Reserved.
public IO_COUNTERS IoInfo
Field Value
JobMemoryLimit
If the LimitFlags member of the JOBOBJECT_BASIC_LIMIT_INFORMATION structure specifies the JOB_OBJECT_LIMIT_JOB_MEMORY value, this member specifies the limit for the virtual memory that can be committed for the job. Otherwise, this member is ignored.
public nuint JobMemoryLimit
Field Value
PeakJobMemoryUsed
The peak memory usage of all processes currently associated with the job.
public nuint PeakJobMemoryUsed
Field Value
PeakProcessMemoryUsed
The peak memory used by any process ever associated with the job.
public nuint PeakProcessMemoryUsed
Field Value
ProcessMemoryLimit
If the LimitFlags member of the JOBOBJECT_BASIC_LIMIT_INFORMATION structure specifies the JOB_OBJECT_LIMIT_PROCESS_MEMORY value, this member specifies the limit for the virtual memory that can be committed by a process. Otherwise, this member is ignored.
public nuint ProcessMemoryLimit