Compartilhar via


Função GetCurrentThread (processthreadsapi.h)

Recupera um pseudo-identificador para o thread de chamada.

Sintaxe

HANDLE GetCurrentThread();

Retornar valor

O valor retornado é um pseudo-identificador para o thread atual.

Comentários

Um pseudo-identificador é uma constante especial que é interpretada como o identificador de thread atual. O thread de chamada pode usar esse identificador para se especificar sempre que um identificador de thread for necessário. Pseudo-identificadores não são herdados por processos filho.

Esse identificador tem o acesso THREAD_ALL_ACCESS diretamente ao objeto de thread. Para obter mais informações, consulte Segurança de thread e direitos de acesso.

Windows Server 2003 e Windows XP: Esse identificador tem o acesso máximo permitido pelo descritor de segurança do thread para o token primário do processo.

A função não pode ser usada por um thread para criar um identificador que pode ser usado por outros threads para se referir ao primeiro thread. O identificador sempre é interpretado como se referindo ao thread que o está usando. Um thread pode criar um identificador "real" para si mesmo que pode ser usado por outros threads ou herdado por outros processos, especificando o pseudo-identificador como o identificador de origem em uma chamada para a função DuplicateHandle .

O pseudo-identificador não precisa ser fechado quando não é mais necessário. Chamar a função CloseHandle com esse identificador não tem efeito. Se o pseudo-identificador for duplicado por DuplicateHandle, o identificador duplicado deverá ser fechado.

Não crie um thread ao representar um contexto de segurança. A chamada terá êxito, no entanto, o thread recém-criado terá direitos de acesso reduzidos a si mesmo ao chamar GetCurrentThread. Os direitos de acesso concedidos a esse thread serão derivados dos direitos de acesso que o usuário representado tem ao processo. Alguns direitos de acesso, incluindo THREAD_SET_THREAD_TOKEN e THREAD_GET_CONTEXT , podem não estar presentes, levando a falhas inesperadas.

Exemplos

Para obter um exemplo, consulte Verificando o acesso do cliente.

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
DLL Kernel32.dll

Confira também

CloseHandle

DuplicateHandle

GetCurrentProcess

Getcurrentthreadid

OpenThread

Funções de thread e processo

Threads

APIs Vertdll disponíveis em enclaves de VBS