LocalDataStoreSlot 類別

定義

封裝記憶體位置以儲存區域資料。 此類別無法獲得繼承。

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
繼承
LocalDataStoreSlot
屬性

備註

.NET Framework提供兩種機制,可用來使用執行緒本機儲存體 (TLS) :執行緒相對靜態欄位和資料位置。

  • 執行緒相對靜態欄位是 static Visual Basic) Shared 中標示 ThreadStaticAttribute 屬性的欄位 (欄位。 它們提供比資料位置更好的效能,並啟用編譯時間類型檢查。

  • 資料位置的速度較慢,而且比執行緒相對靜態欄位更緩慢。 此外,資料會儲存為 類型 Object ,因此您必須先將其轉換成正確的類型,才能使用它。 不過,當您在編譯時期沒有足夠的資訊來配置靜態欄位時,可以使用資料位置。

如需使用 TLS 的詳細資訊,請參閱 執行緒本機儲存體:Thread-Relative靜態欄位和資料位置

同樣地,.NET Framework提供兩種使用內容本機儲存體的機制:內容相對靜態欄位和資料位置。 內容相對靜態欄位是以 屬性標記的 ContextStaticAttribute 靜態欄位。 使用這兩種機制之間的取捨類似于使用執行緒相對靜態欄位和資料位置之間的取捨。

結構 LocalDataStoreSlot 可作為本機存放區記憶體機制,可供執行緒和內容分別用來儲存執行緒特定和內容特定資料。 Common Language Runtime 會在建立時,將多位置資料存放區陣列配置給每個進程。 執行緒或內容會呼叫各種函式來配置資料存放區中的資料位置、儲存和擷取位置中的資料值,以及釋放資料位置以供執行緒或內容物件過期之後重複使用。

每個執行緒或內容的資料位置都是唯一的;其值不會線上程或內容物件之間共用。 資料位置可以透過名稱或索引編號來配置。

如需儲存本機資料的詳細資訊,請參閱 ThreadContext 。 類別 LocalDataStoreSlot 會與 、 Context.AllocateNamedDataSlotThread.GetDataContext.GetDataThread.AllocateNamedDataSlot 方法搭配使用;它沒有您自己需要使用的任何方法。

方法

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
Finalize()

確認釋出資源,並在記憶體回收行程回收 LocalDataStoreSlot 物件時執行其他清除作業。

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

適用於

另請參閱