Apartment是线程容器
STA (Single Thread Apartment):
MTA:
一个进程中可以有多个STA,但最多只能有一个MTA。
STA中只有一个线程,别的线程要访问这个线程建立的COM对象就必须让这个线程代劳了,如此一来,对这个Apartment中所有的COM对象的访问都是序列化的,这些COM对象就不用担心有好几个线程同时访问它的麻烦事。
MTA中的COM对象就没这么舒服了,它们必须考虑到可能会有好几个线程同时访问它们MTA之外的一个线程访问MTA中的一个COM对象时,系统会从COM系统线程池中取出一个线程进入MTA,由它来代表客户线程访问这个COM对象。
FREE :