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 |