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

<AttributeUsageAttribute(AttributeTargets.Method)> _ <ComVisibleAttribute(True)> _ Public NotInheritable Class MTAThreadAttribute Inherits Attribute
[AttributeUsageAttribute(AttributeTargets.Method)] [ComVisibleAttribute(true)] public sealed class MTAThreadAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Method)] [ComVisibleAttribute(true)] public ref class MTAThreadAttribute sealed : public Attribute

この属性をエントリ ポイント メソッド (C# および Visual Basic では Main() メソッド) に適用します。他のメソッドには影響ありません。コードで開始するスレッドのアパートメント状態を設定するには、スレッドを設定する前に Thread.SetApartmentState メソッドを使用します。
![]() |
---|
.NET Framework Version 1.0 および 1.1 では、スレッドを開始する前に Thread.ApartmentState プロパティを設定します。 |
COM スレッド モデルは COM 相互運用機能を使用するアプリケーションにだけ関係します。COM 相互運用機能を使用しないアプリケーションでこの属性を使用しても無効です。
COM スレッド モデルは、シングルスレッド アパートメントにもマルチスレッド アパートメントにも設定できます。アプリケーション スレッドは、スレッドが実際に COM コンポーネントに対する呼び出しを行った場合にだけ、COM 相互運用機能に対して初期化されます。COM 相互運用機能を使用しない場合、スレッドは初期化されません。
.NET Framework Version 1.0 および 1.1 では、最初のコード行で Thread.ApartmentState プロパティを設定する代わりに、この属性を Main() に使用することにより、スタートアップ コードの実行前にスレッド処理モデルを確実に設定します。
![]() |
---|
.NET Framework Version 2.0 では、新しいスレッドが開始される前にスレッドのアパートメント状態が設定されていない場合、新しいスレッドは ApartmentState.MTA として初期化されます。メイン アプリケーション スレッドは、既定で、ApartmentState.MTA に初期化されます。最初のコード行で Thread.ApartmentState プロパティを設定しても、メイン アプリケーション スレッドを ApartmentState.STA に設定できません。代わりに STAThreadAttribute を使用します。 |
.NET Framework Version 2.0 からは、/CLRTHREADATTRIBUTE (CLR スレッド属性の設定) リンカ オプションを使用して C++ アプリケーション用の COM スレッド処理モデルを指定することもできます。
ページが STA スレッド プールで強制的に提供されるように、ASP.NET アプリケーションでは、@ Page ディレクティブの ASPCompat 属性を true に設定する必要があります。

System.Attribute
System.MTAThreadAttribute


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


MTAThreadAttribute コンストラクタ
アセンブリ: mscorlib (mscorlib.dll 内)


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


MTAThreadAttribute プロパティ
MTAThreadAttribute メソッド

名前 | 説明 | |
---|---|---|
![]() | Equals | オーバーロードされます。 ( Attribute から継承されます。) |
![]() | GetCustomAttribute | オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用された指定した型のカスタム属性を取得します。 ( Attribute から継承されます。) |
![]() | GetCustomAttributes | オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されたカスタム属性の配列を取得します。 ( Attribute から継承されます。) |
![]() | GetHashCode | このインスタンスのハッシュ コードを返します。 ( Attribute から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
![]() | IsDefaultAttribute | 派生クラス内でオーバーライドされたときに、このインスタンスの値が派生クラスの既定値かどうかを示します。 ( Attribute から継承されます。) |
![]() | IsDefined | オーバーロードされます。 指定した型のカスタム属性が、アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されているかどうかを判断します。 ( Attribute から継承されます。) |
![]() | Match | 派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。 ( Attribute から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) |

MTAThreadAttribute メンバ
アプリケーションの COM スレッド モデルがマルチスレッド アパートメント (MTA: Multithreaded Apartment) であることを示します。
MTAThreadAttribute データ型で公開されるメンバを以下の表に示します。



名前 | 説明 | |
---|---|---|
![]() | Equals | オーバーロードされます。 ( Attribute から継承されます。) |
![]() | GetCustomAttribute | オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用された指定した型のカスタム属性を取得します。 (Attribute から継承されます。) |
![]() | GetCustomAttributes | オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されたカスタム属性の配列を取得します。 (Attribute から継承されます。) |
![]() | GetHashCode | このインスタンスのハッシュ コードを返します。 (Attribute から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
![]() | IsDefaultAttribute | 派生クラス内でオーバーライドされたときに、このインスタンスの値が派生クラスの既定値かどうかを示します。 (Attribute から継承されます。) |
![]() | IsDefined | オーバーロードされます。 指定した型のカスタム属性が、アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されているかどうかを判断します。 (Attribute から継承されます。) |
![]() | Match | 派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。 (Attribute から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 (Object から継承されます。) |

Weblioに収録されているすべての辞書からMTAThreadAttributeを検索する場合は、下記のリンクをクリックしてください。

- MTAThreadAttributeのページへのリンク