JOBOBJECT_EXTENDED_LIMIT_INFORMATION-Struktur (winnt.h)
Enthält grundlegende und erweiterte Grenzwertinformationen für ein Auftragsobjekt.
Syntax
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;
Member
BasicLimitInformation
Eine JOBOBJECT_BASIC_LIMIT_INFORMATION-Struktur , die grundlegende Grenzwertinformationen enthält.
IoInfo
Reserviert.
ProcessMemoryLimit
Wenn der LimitFlags-Member der JOBOBJECT_BASIC_LIMIT_INFORMATION-Struktur den JOB_OBJECT_LIMIT_PROCESS_MEMORY-Wert angibt, gibt dieses Element den Grenzwert für den virtuellen Arbeitsspeicher an, der von einem Prozess committet werden kann. Andernfalls wird dieser Member ignoriert.
JobMemoryLimit
Wenn der LimitFlags-Member der JOBOBJECT_BASIC_LIMIT_INFORMATION-Struktur den JOB_OBJECT_LIMIT_JOB_MEMORY-Wert angibt, gibt dieser Member den Grenzwert für den virtuellen Arbeitsspeicher an, der für den Auftrag committet werden kann. Andernfalls wird dieser Member ignoriert.
PeakProcessMemoryUsed
Der Spitzenspeicher, der von jedem Prozess verwendet wird, der jemals dem Auftrag zugeordnet ist.
PeakJobMemoryUsed
Die spitzen Speicherauslastung aller Prozesse, die derzeit dem Auftrag zugeordnet sind.
Hinweise
Das System verfolgt den Wert von PeakProcessMemoryUsed und PeakJobMemoryUsed kontinuierlich nach. Dadurch können Sie die Spitzenauslastung des Arbeitsspeichers der einzelnen Aufträge kennen. Sie können diese Informationen verwenden, um mithilfe des JOB_OBJECT_LIMIT_PROCESS_MEMORY- oder JOB_OBJECT_LIMIT_JOB_MEMORY-Werts ein Speicherlimit festzulegen.
Beachten Sie, dass die Grenzwerte für Auftragsspeicher und Prozessspeicher im Betrieb sehr ähnlich sind, aber unabhängig sind. Sie können ein auftragsweites Limit von 100 MB mit einem Pro-Prozess-Limit von 10 MB festlegen. In diesem Szenario kann kein einzelner Prozess mehr als 10 MB commiten, und der Satz von Prozessen, die einem Auftrag zugeordnet sind, darf niemals 100 MB überschreiten.
Verwenden Sie die SetInformationJobObject-Funktion mit der JobObjectNotificationLimitInformation-Informationsklasse , um Benachrichtigungen darüber zu erhalten, dass ein Auftrag den Maximalen Arbeitsspeichergrenzwert überschritten hat, während Prozesse weiterhin Arbeitsspeicher committen können.
Anforderungen
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Kopfzeile | winnt.h (Einschließen von Windows.h) |
Weitere Informationen
JOBOBJECT_BASIC_LIMIT_INFORMATION