Freigeben über


TlsGetValue2-Funktion (processthreadsapi.h)

Wichtig

Einige Informationen beziehen sich auf ein Vorabversionsprodukt, das vor der kommerziellen Veröffentlichung erheblich geändert werden kann. Microsoft übernimmt keine Gewährleistungen, ausdrücklich oder konkludent in Bezug auf die hier bereitgestellten Informationen.

Ruft den Wert im threadlokalen Speicherplatz (TLS) des aufrufenden Threads für den angegebenen TLS-Index ab. Jeder Thread eines Prozesses verfügt über einen eigenen Steckplatz für jeden TLS-Index.

Syntax

LPVOID TlsGetValue2(
  [in] DWORD dwTlsIndex
);

Parameter

[in] dwTlsIndex

Der TLS-Index, der von der TlsAlloc-Funktion zugeordnet wurde,.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert der Wert, der im TLS-Steckplatz des aufrufenden Threads gespeichert ist, der dem angegebenen Index zugeordnet ist. Wenn dwTlsIndex- ein gültiger Index ist, der einem erfolgreichen Aufruf von TlsAlloc-zugeordnet ist, ist diese Funktion immer erfolgreich.

Wenn die Funktion fehlschlägt, ist der Rückgabewert null.

Bemerkungen

TLS-Indizes werden in der Regel vom TlsAlloc--Funktion während der Prozess- oder DLL-Initialisierung zugewiesen. Nachdem ein TLS-Index zugewiesen wurde, kann jeder Thread des Prozesses ihn verwenden, um auf einen eigenen TLS-Steckplatz für diesen Index zuzugreifen. Ein Thread gibt einen TLS-Index in einem Aufruf von TlsSetValue- an, um einen Wert im Steckplatz zu speichern. Der Thread gibt denselben Index in einem nachfolgenden Aufruf von TlsGetValue2 an, um den gespeicherten Wert abzurufen.

TlsGetValue2- wurde mit Geschwindigkeit als primäres Ziel implementiert. Die Funktion führt minimale Parameterüberprüfung und Fehlerüberprüfung durch. Insbesondere ist es erfolgreich, wenn dwTlsIndex- sich im Bereich 0 bis (TLS_MINIMUM_AVAILABLE– 1) befindet. Es liegt bei dem Programmierer, sicherzustellen, dass der Index gültig ist und dass der Thread TlsSetValue- aufruft, bevor TlsGetValue2-aufgerufen wird.

Diese Funktion ist identisch mit TlsGetValue- mit der Ausnahme, dass der letzte Fehler des Threads nicht festgelegt wird. Anwendungen, die diese Funktion aufrufen, sollten die Verwendung von 0 als gültigen Wert vermeiden, da GetLastError nicht aufgerufen werden kann, um zu überprüfen, ob die Funktion fehlgeschlagen ist.

Beispiele

Siehe Verwenden des lokalen Threadspeichers oder Verwenden des lokalen Threadspeichers in einer Dynamic-Link Bibliothek.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 11, Version 24H2
Zielplattform- Fenster
Header- processthreadsapi.h
Library Kernel32.lib
DLL- Kernel32.dll

Siehe auch

Prozess- und Threadfunktionen

lokalen Threadspeicher-

TlsAlloc-

TlsFree-

TlsSetValue-

Vertdll-APIs in VBS-Enklaven