【发布时间】:2011-12-17 08:30:06
【问题描述】:
第一次使用 COM 我有这个 COM dll,比如 ABCServer.dll,我创建了一个 RCW 并在我的项目中添加了对它的引用。现在我的应用程序创建了几个线程,每个线程从 COM dll 创建某些类并使用它们。但是随后每个线程都在等待,而其他线程正在使用 COM dll 中的某个类。
修改我的应用程序的全部目的是在其上启用多线程。现在,当我身边发生多线程时,COM 导致它是顺序的。虽然每个线程都在创建新实例,但为什么还要等待其他线程被处理?
【问题讨论】:
-
您的 COM 组件声明为单线程单元 (STA) 还是多线程单元 (MTA)?
-
如何以及在哪里检查?
-
@EagerToLearn 见stackoverflow.com/questions/2722867/…
-
上面写着 ThreadingModel - Apartment
-
@shf301 在那个问题上指的是this answer。
标签: .net visual-studio com