LocalDataStoreSlot Klasse

Definition

Kapselt einen Speicherslot zum Speichern lokaler Daten. Diese Klasse kann nicht vererbt werden.

public ref class LocalDataStoreSlot sealed
public sealed class LocalDataStoreSlot
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class LocalDataStoreSlot
type LocalDataStoreSlot = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type LocalDataStoreSlot = class
Public NotInheritable Class LocalDataStoreSlot
Vererbung
LocalDataStoreSlot
Attribute

Hinweise

Der .NET Framework bietet zwei Mechanismen für die Verwendung des lokalen Threadspeichers (Thread Local Storage, TLS): threadrelative statische Felder und Datenslots.

  • Threadrelative statische Felder sind static Felder (Shared Felder in Visual Basic), die mit dem ThreadStaticAttribute -Attribut gekennzeichnet sind. Sie bieten eine bessere Leistung als Datenslots und ermöglichen die Überprüfung des Kompilierzeittyps.

  • Datenslots sind langsamer und umständlicher zu verwenden als threadrelative statische Felder. Außerdem werden Daten als Typ Objectgespeichert, sodass Sie sie vor der Verwendung in den richtigen Typ umwandeln müssen. Sie können jedoch Datenslots verwenden, wenn zur Kompilierzeit nicht genügend Informationen zum Zuordnen statischer Felder vorhanden sind.

Weitere Informationen zur Verwendung von TLS finden Sie unter Thread Local Storage: Thread-Relative Statische Felder und Datenslots.

Ebenso bietet die .NET Framework zwei Mechanismen für die Verwendung des lokalen Kontextspeichers: kontextrelative statische Felder und Datenslots. Kontextbezogene statische Felder sind statische Felder, die mit dem ContextStaticAttribute -Attribut gekennzeichnet sind. Die Kompromisse zwischen der Verwendung dieser beiden Mechanismen ähneln den Kompromissen zwischen der Verwendung von threadrelativen statischen Feldern und Datenslots.

Die LocalDataStoreSlot -Struktur dient als lokaler Speicherspeichermechanismus, den Threads und Kontexte verwenden können, um threadspezifische bzw. kontextspezifische Daten zu speichern. Die Common Language Runtime weist jedem Prozess bei der Erstellung ein Array mit einem Datenspeicher mit mehreren Slots zu. Der Thread oder Kontext ruft verschiedene Funktionen auf, um einen Datenslot im Datenspeicher zuzuordnen, einen Datenwert im Slot zu speichern und abzurufen und einen Datenslot zur Wiederverwendung frei zu geben, nachdem der Thread oder das Kontextobjekt abläuft.

Die Datenslots sind pro Thread oder Kontext eindeutig. Ihre Werte werden nicht von den Thread- oder Kontextobjekten gemeinsam verwendet. Datenslots können durch einen Namen oder eine Indexnummer zugeordnet werden.

Weitere Informationen zum Speichern lokaler Daten finden Sie unter Thread oder Context. Die LocalDataStoreSlot -Klasse wird mit Methoden wie Thread.AllocateNamedDataSlot, Context.AllocateNamedDataSlot, Thread.GetDataund Context.GetDataverwendet. Sie verfügt über keine eigenen Methoden, die Sie verwenden müssen.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
Finalize()

Stellt das Freigeben von Ressourcen und das Ausführen anderer Garbage Collector-Vorgänge sicher, wenn der Garbage Collector das LocalDataStoreSlot-Objekt verarbeitet.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Weitere Informationen