/CLRTHREADATTRIBUTE(设置 CLR 线程属性)
更新:2007 年 11 月
为 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 线程属性”(Attribute) 属性 (Property)。
以编程方式设置此链接器选项
- 请参见 CLRThreadAttribute。