Język

LocalDataStoreSlot Klasa

Definicja

Hermetyzuje miejsce pamięci do przechowywania danych lokalnych. Klasa ta nie może być dziedziczona.

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
Dziedziczenie
LocalDataStoreSlot
Atrybuty

Uwagi

Platforma .NET udostępnia dwa mechanizmy korzystania z magazynu lokalnego wątku (TLS): pola statyczne względne wątkowo i miejsca danych.

  • Pola statyczne względne wątkowo są polami static (Shared pól w Visual Basic), które są oznaczone atrybutem ThreadStaticAttribute. Zapewniają lepszą wydajność niż miejsca danych i umożliwiają sprawdzanie typów w czasie kompilacji.

  • Miejsca danych są wolniejsze i bardziej niewygodne do użycia niż pola statyczne względne wątku. Ponadto dane są przechowywane jako typ Object, dlatego przed użyciem należy je rzutować do poprawnego typu. Można jednak użyć miejsc danych, gdy w czasie kompilacji nie masz wystarczających informacji, aby przydzielić pola statyczne.

Aby uzyskać więcej informacji na temat korzystania z protokołu TLS, zobacz Magazyn lokalny wątku: Thread-Relative pola statyczne i miejsca danych.

Podobnie struktura .NET zapewnia dwa mechanizmy korzystania z magazynu lokalnego kontekstu: kontekstowe pola statyczne i miejsca danych. Pola statyczne względne kontekstowo to pola statyczne oznaczone atrybutem ContextStaticAttribute . Kompromisy między użyciem tych dwóch mechanizmów są podobne do kompromisów między użyciem pól statycznych względnych wątków i miejsc danych.

Struktura LocalDataStoreSlot służy jako mechanizm pamięci magazynu lokalnego, którego wątki i konteksty mogą używać do przechowywania odpowiednio danych specyficznych dla wątków i kontekstu. Środowisko uruchomieniowe języka wspólnego przydziela tablicę magazynów danych z wieloma miejscami do każdego procesu podczas jego tworzenia. Wątek lub kontekst wywołuje różne funkcje w celu przydzielenia miejsca danych w magazynie danych, przechowywania i pobierania wartości danych w miejscu oraz zwolnienia miejsca danych do ponownego użycia po wygaśnięciu obiektu wątku lub kontekstu.

Miejsca danych są unikatowe dla każdego wątku lub kontekstu; ich wartości nie są udostępniane między obiektami wątku ani kontekstu. Miejsca danych można przydzielić według nazwy lub numeru indeksu.

Aby uzyskać więcej informacji na temat przechowywania danych lokalnych, zobacz Thread lub Context. Klasa LocalDataStoreSlot jest używana z metodami, takimi jak Thread.AllocateNamedDataSlot, Context.AllocateNamedDataSlot, Thread.GetDatai Context.GetData; nie ma żadnych własnych metod, których należy użyć.

Metody

Nazwa Opis
Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.

(Odziedziczone po Object)
Finalize()

Gwarantuje, że zasoby są zwalniane, a inne operacje oczyszczania są wykonywane, gdy moduł odśmiecający elementy bezużyteczne LocalDataStoreSlot odzyska obiekt.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Pobiera Type bieżącego wystąpienia.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Object.

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Dotyczy

Zobacz też