/CLRTHREADATTRIBUTE(设置 CLR 线程特性)
为 CLR 程序的入口点显式指定线程特性。
/CLRTHREADATTRIBUTE:{STA|MTA|NONE}
参数
MTA
将 MTAThreadAttribute 特性应用于程序的入口点。NONE
等效于不指定 /CLRTHREADATTRIBUTE。 让公共语言运行时 (CLR) 设置默认线程特性。STA
将 STAThreadAttribute 特性应用于程序的入口点。
备注
设置线程特性只有在生成 .exe 时才有效,因为它影响主线程的入口点。
如果使用默认入口点(例如 main 或 wmain),则使用 /CLRTHREADATTRIBUTE 或将线程特性(STAThreadAttribute 或 MTAThreadAttribute)置于默认入口函数来指定线程模型。
如果使用非默认入口点,则先使用 /CLRTHREADATTRIBUTE 或将线程特性置于非默认入口函数来指定线程模型,然后使用 /ENTRY 来指定非默认入口点。
如果在源代码中指定的线程模型与使用 /CLRTHREADATTRIBUTE 指定的线程模型不一致,链接器将忽略 /CLRTHREADATTRIBUTE 并应用在源代码中指定的线程模型。
例如,如果 CLR 程序承载使用单线程的 COM 对象,则必须使用单线程。 如果 CLR 程序使用多线程,则该程序不能承载使用单线程的 COM 对象。
在 Visual Studio 开发环境中设置此链接器选项
打开项目的**“属性页”**对话框。 有关详细信息,请参见如何:打开项目属性页。
展开**“配置属性”**节点。
展开**“链接器”**节点。
选择**“高级”**属性页。
修改**“CLR 线程特性”**属性。
以编程方式设置此链接器选项
- 请参见 CLRThreadAttribute。