线程模型属性

COM+ 可管理线程。 每个 COM 组件都有一个 ThreadingModel 属性,可在开发组件时指定此属性。 此属性确定如何将组件对象分配给线程来执行方法。

可以使用组件服务管理工具查看线程模型属性,方法是右键单击“组件”文件夹中的某个组件,单击“属性”,然后单击“并发”选项卡。在“线程模型”下,可能的值如下所示:

  • 主线程单元
  • 单线程单元
  • 可用线程单元
  • 中性单元
  • 任何单元

COM+ 的首选线程模型是中性单元。 但是,如果未为组件指定线程模型,COM+ 将使用默认的主线程单元。

注意

有关详细信息,请参阅选择线程模型

 

下表显示了 COM+ 中单元的编程模型。

模型 单元 免费 推送、请求和匿名 中立 未指定
单线程,而不是主线程 在当前单元中创建 在多线程单元中创建 在当前单元中创建 在中性单元中创建 在主线程单元中创建
单线程,主线程 在当前单元中创建 在多线程单元中创建 在当前单元中创建 在中性单元中创建 在当前单元中创建
多线程 在主机单线程单元中创建 在多线程单元中创建 在多线程单元中创建 在中性单元中创建 在主线程单元中创建
中性(在 STA 线程上) 在此线程的主机单线程单元中创建 在多线程单元中创建 在中性单元中创建 在中性单元中创建 在主线程单元中创建
中性(在 MTA 线程上) 在主机单线程单元中创建 在多线程单元中创建 在中性单元中创建 在中性单元中创建 在主线程单元中创建

 

ThreadingModel