来自 MSDN 关于 STAThread 的文章:
指示应用程序的 COM 线程模型为单线程单元(STA)。
(作为参考,这是 整篇文章。)
单线公寓... 好吧,我没想到。另外,我在某处读到,除非您的应用程序使用 COM 互操作,否则该属性实际上什么也不做。那么它到底是做什么的,它是如何影响多线程应用程序的呢?多线程应用程序(包括从使用 Timer
的任何人到异步方法调用的任何东西,而不仅仅是线程池等等)是否应该使用 MTAThread,即使它“只是为了安全”?STAThread 和 MTAThread 实际上做什么?