次の方法で共有


スレッド モデル属性

COM+ はスレッドを管理します。 すべての COM コンポーネントには、コンポーネントの開発時に指定できる ThreadingModel プロパティがあります。 このプロパティは、メソッドの実行のためにコンポーネント オブジェクトをスレッドに割り当てる方法を決定します。

コンポーネントサービス管理ツールを使用すると、 コンポーネント フォルダ内のコンポーネントを右クリック、 プロパティをクリック、 コンカレンシー タブをクリックすることで、スレッドモデル プロパティを表示できます。 スレッドモデルで使用可能な値は次のとおりです。

  • メイン スレッド アパートメント
  • シングル スレッド アパートメント
  • フリー スレッド アパートメント
  • ニュートラル アパートメント
  • すべてのアパートメント

COM+ の推奨スレッド モデルは、 ニュートラル アパートメントです。 ただし、コンポーネントのスレッド モデルを指定しない場合、COM+ は既定の メイン スレッド アパートメントを使用します。

Note

詳細については、「スレッド モデルの選択」を参照してください。

 

次の表は、COM+ のアパートメントのプログラミング モデルを示しています。

モデル アパート Free 両方 ニュートラル 指定なし
メインではなく、シングル スレッド 現在のアパートで作成 マルチスレッド アパートメントで作成 現在のアパートで作成 ニュートラル アパートメントで作成 メイン スレッド アパートメントで作成
シングル スレッド、メイン 現在のアパートで作成 マルチスレッド アパートメントで作成 現在のアパートで作成 ニュートラル アパートメントで作成 現在のアパートで作成
Multithreaded ホストシングルスレッドアパートメントで作成 マルチスレッド アパートメントで作成 マルチスレッド アパートメントで作成 ニュートラル アパートメントで作成 メイン スレッド アパートメントで作成
ニュートラル (STA スレッド上) このスレッドのホスト シングル スレッド アパートメントで作成 マルチスレッド アパートメントで作成 ニュートラル アパートメントで作成 ニュートラル アパートメントで作成 メイン スレッド アパートメントで作成
ニュートラル (MTA スレッド上) ホストシングルスレッドアパートメントで作成 マルチスレッド アパートメントで作成 ニュートラル アパートメントで作成 ニュートラル アパートメントで作成 メイン スレッド アパートメントで作成

 

ThreadingModel