QueryInformationJobObject 函式 (jobapi2.h)

從工作物件擷取限制和作業狀態資訊。

語法

BOOL QueryInformationJobObject(
  [in, optional]  HANDLE             hJob,
  [in]            JOBOBJECTINFOCLASS JobObjectInformationClass,
  [out]           LPVOID             lpJobObjectInformation,
  [in]            DWORD              cbJobObjectInformationLength,
  [out, optional] LPDWORD            lpReturnLength
);

參數

[in, optional] hJob

正在查詢其資訊的作業控制碼。 CreateJobObjectOpenJobObject函式會傳回此控制碼。 控制碼必須具有 JOB_OBJECT_QUERY 存取權限。 如需詳細資訊,請參閱 工作物件安全性和存取權限

如果此值為 Null,且呼叫進程與作業相關聯,則會使用與呼叫進程相關聯的作業。 如果作業是巢狀的,則會使用呼叫進程的立即作業。

[in] JobObjectInformationClass

要查詢之限制的資訊類別。 此參數可以是下列其中一個值。

意義
JobObjectBasicAccountingInformation
1
lpJobObjectInfo參數是JOBOBJECT_BASIC_ACCOUNTING_INFORMATION結構的指標。
JobObjectBasicAndIoAccountingInformation
8
lpJobObjectInfo參數是JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION結構的指標。
JobObjectBasicLimitInformation
2
lpJobObjectInfo參數是JOBOBJECT_BASIC_LIMIT_INFORMATION結構的指標。
JobObjectBasicProcessIdList
3
lpJobObjectInfo參數是JOBOBJECT_BASIC_PROCESS_ID_LIST結構的指標。
JobObjectBasicUIRestrictions
4
lpJobObjectInfo參數是JOBOBJECT_BASIC_UI_RESTRICTIONS結構的指標。
JobObjectCpuRateControlInformation
15
lpJobObjectInfo參數是JOBOBJECT_CPU_RATE_CONTROL_INFORMATION結構的指標。

Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此旗標。

JobObjectEndOfJobTimeInformation
6
lpJobObjectInfo參數是JOBOBJECT_END_OF_JOB_TIME_INFORMATION結構的指標。
JobObjectExtendedLimitInformation
9
lpJobObjectInfo參數是JOBOBJECT_EXTENDED_LIMIT_INFORMATION結構的指標。
JobObjectGroupInformation
11
lpJobObjectInfo參數是緩衝區的指標,可接收目前指派作業的處理器群組清單。 lpReturnLength參數所指向的變數會設定為群組資料的大小。 將此值除 sizeof(USHORT) 以判斷群組數目。

Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此旗標。

JobObjectGroupInformationEx
14
lpJobObjectInfo參數是緩衝區的指標,可接收GROUP_AFFINITY結構的陣列,指出目前指派作業之處理器群組中作業的親和性。 lpReturnLength參數所指向的變數會設定為群組親和性資料的大小。 將此值除 sizeof(GROUP_AFFINITY) 以判斷群組數目。

Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此旗標。

JobObjectLimitViolationInformation
13
lpJobObjectInfo參數是JOBOBJECT_LIMIT_VIOLATION_INFORMATION結構的指標。

Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此旗標。

JobObjectLimitViolationInformation2
34
lpJobObjectInfo參數是JOBOBJECT_LIMIT_VIOLATION_INFORMATION_2結構的指標。

Windows 8.1、Windows Server 2012 R2、Windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP:不支援此旗標。

JobObjectNetRateControlInformation
32
lpJobObjectInfo參數是JOBOBJECT_NET_RATE_CONTROL_INFORMATION結構的指標。

Windows 8.1、Windows Server 2012 R2、Windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP:不支援此旗標。

JobObjectNotificationLimitInformation
12
lpJobObjectInfo參數是JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION結構的指標。

Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此旗標。

JobObjectNotificationLimitInformation2
33
lpJobObjectInfo參數是JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION_2結構的指標。

Windows 8.1、Windows Server 2012 R2、Windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP:不支援此旗標。

JobObjectSecurityLimitInformation
5
不支援此旗標。 應用程式必須針對每個進程個別設定安全性限制。 Windows Server 2003 和 Windows XP:lpJobObjectInfo參數是JOBOBJECT_SECURITY_LIMIT_INFORMATION結構的指標。

[out] lpJobObjectInformation

限制或作業狀態資訊。 此資料的格式取決於 JobObjectInfoClass 參數的值。

[in] cbJobObjectInformationLength

要查詢的作業資訊計數,以位元組為單位。 此值取決於 JobObjectInfoClass 參數的值。

[out, optional] lpReturnLength

變數的指標,接收 寫入至 lpJobObjectInfo 參數所指向之結構的資料長度。 指定 Null 以不接收這項資訊。

傳回值

如果函式成功,則傳回非零的值。

如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

備註

使用 QueryInformationJobObject 來取得目前的限制並加以修改。 使用 SetInformationJobObject 函式來設定新的限制。

若要編譯使用此函式的應用程式,請將 _WIN32_WINNT 定義為0x0500或更新版本。 如需詳細資訊,請參閱 使用 Windows 標頭

需求

   
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 jobapi2.h (包含 Windows.h)
程式庫 Kernel32.lib
DLL Kernel32.dll

另請參閱

JOBOBJECT_BASIC_ACCOUNTING_INFORMATION

JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION

JOBOBJECT_BASIC_LIMIT_INFORMATION

JOBOBJECT_BASIC_PROCESS_ID_LIST

JOBOBJECT_BASIC_UI_RESTRICTIONS

JOBOBJECT_CPU_RATE_CONTROL_INFORMATION

JOBOBJECT_END_OF_JOB_TIME_INFORMATION

JOBOBJECT_EXTENDED_LIMIT_INFORMATION

JOBOBJECT_LIMIT_VIOLATION_INFORMATION

JOBOBJECT_LIMIT_VIOLATION_INFORMATION_2

JOBOBJECT_NET_RATE_CONTROL_INFORMATION

JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION

JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION_2

JOBOBJECT_SECURITY_LIMIT_INFORMATION

工作物件

處理序和執行緒函式

SetInformationJobObject