Share via


Función TlsSetValue (processthreadsapi.h)

Almacena un valor en la ranura de almacenamiento local (TLS) del subproceso que llama para el índice TLS especificado. Cada subproceso de un proceso tiene su propia ranura para cada índice de TLS.

Sintaxis

BOOL TlsSetValue(
  [in]           DWORD  dwTlsIndex,
  [in, optional] LPVOID lpTlsValue
);

Parámetros

[in] dwTlsIndex

Índice TLS asignado por la función TlsAlloc .

[in, optional] lpTlsValue

Valor que se va a almacenar en la ranura TLS del subproceso que llama para el índice.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Comentarios

Windows Phone 8.1: esta función es compatible con las aplicaciones de Windows Phone Store en Windows Phone 8.1 y versiones posteriores. Cuando una aplicación Windows Phone Store llama a esta función, se reemplaza por una llamada insertada a FlsSetValue. Consulte FlsSetValue para obtener la documentación de la función.

Windows 8.1, Windows Server 2012 R2 y Windows 10, versión 1507: esta función es compatible con las aplicaciones de la Tienda Windows en Windows 8.1, Windows Server 2012 R2 y Windows 10, versión 1507. Cuando una aplicación de la Tienda Windows llama a esta función, se reemplaza por una llamada insertada a FlsSetValue. Consulte FlsSetValue para obtener la documentación de la función.

Windows 10, versión 1511 y Windows 10, versión 1607: esta función es totalmente compatible con las aplicaciones de Plataforma universal de Windows (UWP) y ya no se reemplaza por una llamada insertada a FlsSetValue.

Normalmente, la función TlsAlloc asigna índices TLS durante la inicialización del proceso o dll. Cuando se asigna un índice TLS, sus ranuras de almacenamiento se inicializan en NULL. Una vez asignado un índice TLS, cada subproceso del proceso puede usarlo para acceder a su propia ranura TLS para ese índice. Un subproceso especifica un índice TLS en una llamada a TlsSetValue, para almacenar un valor en su ranura. El subproceso especifica el mismo índice en una llamada posterior a TlsGetValue, para recuperar el valor almacenado.

TlsSetValue se implementó con velocidad como objetivo principal. La función realiza la validación mínima de parámetros y la comprobación de errores. En concreto, se realiza correctamente si dwTlsIndex está en el intervalo de 0 a (TLS_MINIMUM_AVAILABLE – 1). El programador debe asegurarse de que el índice es válido antes de llamar a TlsGetValue.

Ejemplos

Para obtener un ejemplo, consulte Uso del almacenamiento local de subprocesos o Uso del almacenamiento local de subprocesos en una biblioteca de Dynamic-Link.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [aplicaciones de escritorio | aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP]
Plataforma de destino Windows
Encabezado processthreadsapi.h (incluye Windows.h en Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2)
Library Kernel32.lib; WindowsPhoneCore.lib en Windows Phone 8.1
Archivo DLL KernelBase.dll en Windows Phone 8.1; Kernel32.dll

Consulte también

Funciones de proceso y subproceso

Almacenamiento local de subprocesos

TlsAlloc

TlsFree

TlsGetValue

API de Vertdll disponibles en enclaves de VBS