LocalDataStoreSlot LocalDataStoreSlot LocalDataStoreSlot LocalDataStoreSlot Class

定義

ローカル データを格納するメモリ スロットをカプセル化します。Encapsulates a memory slot to store local data. このクラスは継承できません。This class cannot be inherited.

public ref class LocalDataStoreSlot sealed
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class LocalDataStoreSlot
type LocalDataStoreSlot = class
Public NotInheritable Class LocalDataStoreSlot
継承
LocalDataStoreSlotLocalDataStoreSlotLocalDataStoreSlotLocalDataStoreSlot
属性

注釈

.NET Framework には、スレッド ローカル ストレージ (TLS) を使用して 2 つのメカニズムが用意されています: スレッド相対静的フィールド、およびデータ スロット。The .NET Framework provides two mechanisms for using thread local storage (TLS): thread-relative static fields, and data slots.

  • スレッド相対静的フィールドはstaticフィールド (Shared Visual Basic でのフィールド) でマークされている、ThreadStaticAttribute属性。Thread-relative static fields are static fields (Shared fields in Visual Basic) that are marked with the ThreadStaticAttribute attribute. データ スロットより優れたパフォーマンスを提供し、コンパイル時の型チェックを有効にします。They provide better performance than data slots, and enable compile-time type checking.

  • データ スロットは、時間がかかり、スレッド相対静的フィールドよりも使いにくくします。Data slots are slower and more awkward to use than thread-relative static fields. 型としてデータを格納することも、Objectので、使用する前に、正しい型にキャストする必要があります。Also, data is stored as type Object, so you must cast it to the correct type before using it. ただし、コンパイル時に静的フィールドを割り当てるが不足している情報がある場合は、データ スロットを使用することができます。However, you can use data slots when you have insufficient information at compile time to allocate static fields.

詳細については、TLS を使用して、次を参照してください。スレッド ローカル ストレージ。スレッド相対静的フィールドとデータ スロットします。For more information about using TLS, see Thread Local Storage: Thread-Relative Static Fields and Data Slots.

同様に、.NET Framework は、コンテキストのローカル ストレージを使用して 2 つのメカニズムを提供します。 コンテキスト相対静的フィールドとデータ スロット。Similarly, the .NET Framework provides two mechanisms for using context local storage: context-relative static fields and data slots. コンテキスト相対静的フィールドは静的フィールドでマークされている、ContextStaticAttribute属性。Context-relative static fields are static fields that are marked with the ContextStaticAttribute attribute. これら 2 つのメカニズムを使用して間のトレードオフは、スレッド相対静的フィールドとデータ スロット間のトレードオフに似ています。The trade-offs between using these two mechanisms are similar to the tradeoffs between using thread-relative static fields and data slots.

LocalDataStoreSlot構造として、ローカルがスレッドのメモリのメカニズムを格納し、それぞれのスレッドおよびコンテキストに固有のデータを格納するコンテキストを使用できます。The LocalDataStoreSlot structure serves as a local store memory mechanism that threads and contexts can use to store thread-specific and context-specific data, respectively. 共通言語ランタイムは、作成時に、各プロセスにマルチ スロットのデータ ストア配列を割り当てます。The common language runtime allocates a multi-slot data store array to each process when it is created. スレッドまたはコンテキストの呼び出しをさまざまな機能と、データ ストア内のデータ スロットの割り当てを格納およびスロットにデータ値を取得、データ スロットを解放はスレッドまたはコンテキスト オブジェクトの有効期限が切れた後に再利用します。The thread or context calls various functions to allocate a data slot in the data store, to store and retrieve a data value in the slot, and to free a data slot for reuse after the thread or context object expires.

データ スロットでは、スレッドまたはコンテキストごとに一意その値はスレッドまたはコンテキストのオブジェクト間で共有されません。The data slots are unique per thread or context; their values are not shared between the thread or context objects. インデックス番号または名前で、データ スロットを割り当てることができます。Data slots can be allocated by a name or by an index number.

ローカル データの保存に関する詳細については、次を参照してください。ThreadまたはContextします。For more information about storing local data, see Thread or Context. LocalDataStoreSlotクラスがなどのメソッドで使用されますThread.AllocateNamedDataSlotContext.AllocateNamedDataSlotThread.GetData、およびContext.GetData; いずれかのことはありませんが、独自のメソッドを使用する必要があります。The LocalDataStoreSlot class is used with methods such as Thread.AllocateNamedDataSlot, Context.AllocateNamedDataSlot, Thread.GetData, and Context.GetData; it does not have any methods of its own that you need to use.

メソッド

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
Finalize() Finalize() Finalize() Finalize()

ガベージ コレクターが LocalDataStoreSlot オブジェクトを再利用しているときに、リソースが解放され、他のクリーンアップ操作が確実に実行されるようにします。Ensures that resources are freed and other cleanup operations are performed when the garbage collector reclaims the LocalDataStoreSlot object.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)

適用対象

こちらもご覧ください