Compartilhar via


Função TerminateJobObject (jobapi2.h)

Encerra todos os processos atualmente associados ao trabalho. Se o trabalho estiver aninhado, essa função encerrará todos os processos atualmente associados ao trabalho e a todos os seus trabalhos filho na hierarquia.

Sintaxe

BOOL TerminateJobObject(
  [in] HANDLE hJob,
  [in] UINT   uExitCode
);

Parâmetros

[in] hJob

Um identificador para o trabalho cujos processos serão encerrados. A função CreateJobObject ou OpenJobObject retorna esse identificador. Esse identificador deve ter o acesso de JOB_OBJECT_TERMINATE correto. Para obter mais informações, consulte Segurança do objeto de trabalho e direitos de acesso.

O identificador de cada processo no objeto de trabalho deve ter o acesso PROCESS_TERMINATE correto. Para obter mais informações, consulte Direitos de Acesso e Segurança do Processo.

[in] uExitCode

O código de saída a ser usado por todos os processos e threads no objeto de trabalho. Use a função GetExitCodeProcess para recuperar o valor de saída de cada processo. Use a função GetExitCodeThread para recuperar o valor de saída de cada thread.

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

Não é possível que nenhum dos processos associados ao trabalho adie ou lide com a rescisão. É como se TerminateProcess fosse chamado para cada processo associado ao trabalho.

Encerrar um trabalho aninhado também encerra todos os objetos de trabalho filho. Os recursos usados pelos trabalhos encerrados são cobrados pela cadeia de trabalho pai na hierarquia.

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

Requisito Valor
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, Jobapi2.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

CreateJobObject

Objetos de trabalho

OpenJobObject

Funções de thread e processo

TerminateProcess