ThreadStaticAttribute クラス
アセンブリ: mscorlib (mscorlib.dll 内)

<SerializableAttribute> _ <AttributeUsageAttribute(AttributeTargets.Field, Inherited:=False)> _ <ComVisibleAttribute(True)> _ Public Class ThreadStaticAttribute Inherits Attribute
[SerializableAttribute] [AttributeUsageAttribute(AttributeTargets.Field, Inherited=false)] [ComVisibleAttribute(true)] public class ThreadStaticAttribute : Attribute
[SerializableAttribute] [AttributeUsageAttribute(AttributeTargets::Field, Inherited=false)] [ComVisibleAttribute(true)] public ref class ThreadStaticAttribute : public Attribute

ThreadStaticAttribute でマークした static フィールドは、複数のスレッド間で共有されません。実行中の各スレッドは、そのフィールドのインスタンスを個別に持ち、そのフィールドに対して独自に値を設定および取得します。このフィールドに別のスレッドからアクセスすると、フィールドには別の値が格納されます。
![]() |
---|
ThreadStaticAttribute でマークしたフィールドの初期値を指定しないでください。このような初期化は、クラスのコンストラクタの実行時に一度だけ行われるもので、関係するスレッドは 1 つだけです。初期値を指定しなければ、フィールドが、値型の場合はその既定値に、参照型の場合は null 参照 (Visual Basic では Nothing) に初期化されることを前提にできます。 |
この属性はそのまま使用し、そこから他の属性を派生させないようにしてください。ThreadStaticAttribute 構文の例を次に示します。

System.Attribute
System.ThreadStaticAttribute


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- ThreadStaticAttribute クラスのページへのリンク