Compartilhar via


Função GetExitCodeThread (processthreadsapi.h)

Recupera o status de encerramento do thread especificado.

Sintaxe

BOOL GetExitCodeThread(
  [in]  HANDLE  hThread,
  [out] LPDWORD lpExitCode
);

Parâmetros

[in] hThread

Um identificador para o thread.

O identificador deve ter o acesso de THREAD_QUERY_INFORMATION ou THREAD_QUERY_LIMITED_INFORMATION direito. Para obter mais informações, consulte Segurança de thread e direitos de acesso.

Windows Server 2003 e Windows XP: O identificador deve ter o acesso de THREAD_QUERY_INFORMATION correto.

[out] lpExitCode

Um ponteiro para uma variável para receber o status de encerramento do thread. Para obter mais informações, consulte Comentários.

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

Essa função retorna imediatamente. Se o thread especificado não tiver terminado e a função for bem-sucedida, o status retornado será STILL_ACTIVE. Se o thread tiver terminado e a função for bem-sucedida, o status retornado será um dos seguintes valores:

  • O valor de saída especificado na função ExitThread ou TerminateThread .
  • O valor retornado da função thread.
  • O valor de saída do processo do thread.
Importante A função GetExitCodeThread retorna um código de erro válido definido pelo aplicativo somente após o término do thread. Portanto, um aplicativo não deve usar STILL_ACTIVE (259) como um código de erro. Se um thread retornar STILL_ACTIVE (259) como um código de erro, os aplicativos que testam esse valor poderão interpretá-lo para significar que o thread ainda está em execução e continuar a testar a conclusão do thread depois que o thread for encerrado, o que pode colocar o aplicativo em um loop infinito. Para evitar esse problema, os chamadores devem chamar a função GetExitCodeThread somente depois que o thread tiver sido confirmado como encerrado. Use a função WaitForSingleObject com uma duração de espera de zero para determinar se um thread foi encerrado.
 
Windows Phone 8.1: essa função tem suporte para aplicativos da Windows Phone Store no Windows Phone 8.1 e posterior.

Windows 8.1 e Windows Server 2012 R2: essa função tem suporte para aplicativos da Windows Store em Windows 8.1, Windows Server 2012 R2 e posteriores.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [aplicativos da área de trabalho | aplicativos UWP]
Servidor mínimo com suporte Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho processthreadsapi.h (inclua Windows.h no Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2)
Biblioteca Kernel32.lib; WindowsPhoneCore.lib no Windows Phone 8.1
DLL Kernel32.dll; KernelBase.dll no Windows Phone 8.1

Confira também

ExitThread

Getexitcodeprocess

OpenThread

Funções de thread e processo

TerminateThread

Encerrando um thread