JOBOBJECT_LIMIT_VIOLATION_INFORMATION 구조체(winnt.h)
작업 개체에 대해 초과된 리소스 알림 제한에 대한 정보를 포함합니다. 이 구조체는 JobObjectLimitViolationInformation 정보 클래스와 함께 QueryInformationJobObject 함수와 함께 사용됩니다.
구문
typedef struct _JOBOBJECT_LIMIT_VIOLATION_INFORMATION {
DWORD LimitFlags;
DWORD ViolationLimitFlags;
DWORD64 IoReadBytes;
DWORD64 IoReadBytesLimit;
DWORD64 IoWriteBytes;
DWORD64 IoWriteBytesLimit;
LARGE_INTEGER PerJobUserTime;
LARGE_INTEGER PerJobUserTimeLimit;
DWORD64 JobMemory;
DWORD64 JobMemoryLimit;
JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlTolerance;
JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlToleranceLimit;
} JOBOBJECT_LIMIT_VIOLATION_INFORMATION, *PJOBOBJECT_LIMIT_VIOLATION_INFORMATION;
멤버
LimitFlags
작업에 적용되는 알림 제한을 식별하는 플래그입니다. 이 멤버는 다른 구조체 멤버가 사용되는지 여부를 결정하는 비트 필드입니다. 이 멤버는 다음 값의 조합일 수 있습니다.
ViolationLimitFlags
초과된 알림 제한을 식별하는 플래그입니다. 이 멤버는 다른 구조체 멤버가 사용되는지 여부를 결정하는 비트 필드입니다. 이 멤버는 다음 값의 조합일 수 있습니다.
IoReadBytes
ViolationLimitFlags 멤버가 JOB_OBJECT_LIMIT_READ_BYTES 지정하는 경우 이 멤버는 알림을 보낼 때 작업의 모든 프로세스에 대한 총 I/O 읽기 바이트를 포함합니다.
IoReadBytesLimit
LimitFlags 멤버가 JOB_OBJECT_LIMIT_READ_BYTES 지정하는 경우 이 멤버는 작업에 적용되는 I/O 읽기 바이트 알림 제한을 포함합니다.
IoWriteBytes
ViolationLimitFlags 멤버가 JOB_OBJECT_LIMIT_WRITE_BYTES 지정하는 경우 이 멤버는 알림을 보낼 때 작업의 모든 프로세스에 대한 총 I/O 쓰기 바이트를 포함합니다.
IoWriteBytesLimit
LimitFlags 멤버가 JOB_OBJECT_LIMIT_WRITE_BYTES 지정하는 경우 이 멤버는 작업에 적용되는 I/O 쓰기 바이트 알림 제한을 포함합니다.
PerJobUserTime
ViolationLimitFlags 멤버가 JOB_OBJECT_LIMIT_JOB_TIME 지정하는 경우 이 멤버는 알림을 보낼 때 작업의 모든 프로세스에 대한 총 사용자 모드 실행 시간을 포함합니다.
PerJobUserTimeLimit
LimitFlags 멤버가 JOB_OBJECT_LIMIT_JOB_TIME 지정하는 경우 이 멤버는 작업에 적용되는 사용자 모드 실행 알림 제한을 포함합니다.
JobMemory
ViolationLimitFlags 멤버가 JOB_OBJECT_LIMIT_JOB_MEMORY 지정하는 경우 이 멤버는 알림을 보낼 때 작업의 모든 프로세스에 대해 커밋된 메모리를 포함합니다.
JobMemoryLimit
LimitFlags 멤버가 JOB_OBJECT_LIMIT_JOB_MEMORY 지정하는 경우 이 멤버는 작업에 적용되는 커밋된 메모리 제한을 포함합니다.
RateControlTolerance
LimitFlags 매개 변수가 JOB_OBJECT_LIMIT_RATE_CONTROL 지정하는 경우 이 멤버는 알림이 전송될 때 작업이 CPU 속도 제어 제한을 초과한 정도를 지정합니다. 이 멤버는 다음 값 중 하나일 수 있습니다.
값 | 의미 |
---|---|
|
작업이 허용 오차 간격의 20%에 대한 CPU 속도 제어 제한을 초과했습니다. |
|
작업이 허용 오차 간격의 40%에 대한 CPU 속도 제어 제한을 초과했습니다. |
|
작업이 허용 오차 간격의 60%에 대한 CPU 속도 제어 제한을 초과했습니다. |
RateControlToleranceLimit
LimitFlags 매개 변수가 JOB_OBJECT_LIMIT_RATE_CONTROL 지정하는 경우 이 멤버는 작업에 대해 지정된 CPU 속도 제어 알림 제한을 포함합니다.
값 | 의미 |
---|---|
|
허용 오차 간격은 10초입니다. |
|
허용 오차 간격은 1분입니다. |
|
허용 오차 간격은 10분입니다. |
설명
JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION 구조에 지정된 알림 제한을 초과하면 시스템에서 작업과 연결된 I/O 완료 포트에 JOB_OBJECT_MSG_NOTIFICATION_LIMIT 메시지를 보냅니다.
초과된 제한에 대한 정보를 검색하려면 I/O 완료 포트를 모니터링하는 애플리케이션이 JobObjectLimitViolationInformation 정보 클래스 및 JOBOBJECT_LIMIT_VIOLATION_INFORMATION 구조에 대한 포인터를 사용하여 QueryInformationJobObject 함수를 호출해야 합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱만 해당] |
머리글 | winnt.h |