Função QueryInformationJobObject (jobapi2.h)

Recupera informações de limite e estado do trabalho do objeto de trabalho.

Sintaxe

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

Parâmetros

[in, optional] hJob

Um identificador para o trabalho cujas informações estão sendo consultadas. A função CreateJobObject ou OpenJobObject retorna esse identificador. O identificador deve ter o acesso de JOB_OBJECT_QUERY correto. Para obter mais informações, consulte Segurança do objeto de trabalho e direitos de acesso.

Se esse valor for NULL e o processo de chamada estiver associado a um trabalho, o trabalho associado ao processo de chamada será usado. Se o trabalho estiver aninhado, o trabalho imediato do processo de chamada será usado.

[in] JobObjectInformationClass

A classe de informações para os limites a serem consultados. Esse parâmetro pode usar um dos valores a seguir.

Valor Significado
JobObjectBasicAccountingInformation
1
O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura de JOBOBJECT_BASIC_ACCOUNTING_INFORMATION .
JobObjectBasicAndIoAccountingInformation
8
O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION .
JobObjectBasicLimitInformation
2
O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura JOBOBJECT_BASIC_LIMIT_INFORMATION .
JobObjectBasicProcessIdList
3
O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura JOBOBJECT_BASIC_PROCESS_ID_LIST .
JobObjectBasicUIRestrictions
4
O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura JOBOBJECT_BASIC_UI_RESTRICTIONS .
JobObjectCpuRateControlInformation
15
O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura JOBOBJECT_CPU_RATE_CONTROL_INFORMATION .

Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Não há suporte para esse sinalizador.

JobObjectEndOfJobTimeInformation
6
O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura JOBOBJECT_END_OF_JOB_TIME_INFORMATION .
JobObjectExtendedLimitInformation
9
O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura JOBOBJECT_EXTENDED_LIMIT_INFORMATION .
JobObjectGroupInformation
11
O parâmetro lpJobObjectInfo é um ponteiro para um buffer que recebe a lista de grupos de processadores aos quais o trabalho está atribuído no momento. A variável apontada pelo parâmetro lpReturnLength é definida como o tamanho dos dados do grupo. Divida esse valor por sizeof(USHORT) para determinar o número de grupos.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Não há suporte para esse sinalizador.

JobObjectGroupInformationEx
14
O parâmetro lpJobObjectInfo é um ponteiro para um buffer que recebe uma matriz de estruturas GROUP_AFFINITY que indicam a afinidade do trabalho nos grupos de processadores aos quais o trabalho está atribuído no momento. A variável apontada pelo parâmetro lpReturnLength é definida como o tamanho dos dados de afinidade de grupo. Divida esse valor por sizeof(GROUP_AFFINITY) para determinar o número de grupos.

Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Não há suporte para esse sinalizador.

JobObjectLimitViolationInformation
13
O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura JOBOBJECT_LIMIT_VIOLATION_INFORMATION .

Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Não há suporte para esse sinalizador.

JobObjectLimitViolationInformation2
34
O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura 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 e Windows XP: não há suporte para esse sinalizador.

JobObjectNetRateControlInformation
32
O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura 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 e Windows XP: não há suporte para esse sinalizador.

JobObjectNotificationLimitInformation
12
O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION .

Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Não há suporte para esse sinalizador.

JobObjectNotificationLimitInformation2
33
O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura 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 e Windows XP: não há suporte para esse sinalizador.

JobObjectSecurityLimitInformation
5
Não há suporte para esse sinalizador. Os aplicativos devem definir limites de segurança individualmente para cada processo. Windows Server 2003 e Windows XP: O parâmetro lpJobObjectInfo é um ponteiro para uma estrutura JOBOBJECT_SECURITY_LIMIT_INFORMATION .

[out] lpJobObjectInformation

O limite ou as informações de estado do trabalho. O formato desses dados depende do valor do parâmetro JobObjectInfoClass .

[in] cbJobObjectInformationLength

A contagem das informações do trabalho que estão sendo consultadas, em bytes. Esse valor depende do valor do parâmetro JobObjectInfoClass .

[out, optional] lpReturnLength

Um ponteiro para uma variável que recebe o comprimento dos dados gravados na estrutura apontada pelo parâmetro lpJobObjectInfo . Especifique NULL para não receber essas informações.

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.

Comentários

Use QueryInformationJobObject para obter os limites atuais e modificá-los. Use a função SetInformationJobObject para definir novos limites.

Para compilar um aplicativo que usa essa função, defina _WIN32_WINNT como 0x0500 ou posterior. Para obter mais informações, consulte Usando os cabeçalhos do Windows.

Requisitos

   
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho jobapi2.h (inclua Windows.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

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

Objetos de trabalho

Funções de thread e processo

SetInformationJobObject