Função TlsSetValue (processthreadsapi.h)
Armazena um valor no slot TLS (armazenamento local de thread) do thread de chamada para o índice TLS especificado. Cada thread de um processo tem seu próprio slot para cada índice TLS.
Sintaxe
BOOL TlsSetValue(
[in] DWORD dwTlsIndex,
[in, optional] LPVOID lpTlsValue
);
Parâmetros
[in] dwTlsIndex
O índice TLS alocado pela função TlsAlloc .
[in, optional] lpTlsValue
O valor a ser armazenado no slot TLS do thread de chamada para o índice.
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
Windows Phone 8.1: essa função tem suporte para aplicativos da Windows Phone Store no Windows Phone 8.1 e posterior. Quando um aplicativo da Windows Phone Store chama essa função, ela é substituída por uma chamada embutida para FlsSetValue. Consulte FlsSetValue para obter a documentação da função.
Windows 8.1, Windows Server 2012 R2 e Windows 10, versão 1507: essa função tem suporte para aplicativos da Windows Store em Windows 8.1, Windows Server 2012 R2 e Windows 10, versão 1507. Quando um aplicativo da Windows Store chama essa função, ele é substituído por uma chamada embutida para FlsSetValue. Consulte FlsSetValue para obter a documentação da função.
Windows 10, versão 1511 e Windows 10, versão 1607: essa função tem suporte total para aplicativos de Plataforma Universal do Windows (UWP) e não é mais substituída por uma chamada embutida para FlsSetValue.
Normalmente, os índices TLS são alocados pela função TlsAlloc durante o processo ou a inicialização de DLL. Quando um índice TLS é alocado, seus slots de armazenamento são inicializados como NULL. Depois que um índice TLS é alocado, cada thread do processo pode usá-lo para acessar seu próprio slot TLS para esse índice. Um thread especifica um índice TLS em uma chamada para TlsSetValue, para armazenar um valor em seu slot. O thread especifica o mesmo índice em uma chamada subsequente para TlsGetValue, para recuperar o valor armazenado.
TlsSetValue foi implementado com velocidade como o objetivo principal. A função executa validação mínima de parâmetro e verificação de erro. Em particular, ele terá êxito se dwTlsIndex estiver no intervalo de 0 a (TLS_MINIMUM_AVAILABLE – 1). Cabe ao programador garantir que o índice seja válido antes de chamar TlsGetValue.
Exemplos
Para obter um exemplo, consulte Usando o armazenamento local do thread ou usando o armazenamento local de thread em uma biblioteca de Dynamic-Link.
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 Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2) |
Biblioteca | Kernel32.lib; WindowsPhoneCore.lib no Windows Phone 8.1 |
DLL | KernelBase.dll no Windows Phone 8.1; Kernel32.dll |