/CLRTHREADATTRIBUTE (設定 CLR 執行緒屬性)

明確指定 CLR 程式進入點的執行緒屬性。

語法

/CLRTHREADATTRIBUTE:{STA|MTA|NONE}

參數

MTA
將 MTAThreadAttribute 屬性套用至程式的進入點。

NONE
與未指定 /CLRTHREADATTRIBUTE 相同。 讓 Common Language Runtime (CLR) 設定預設執行緒屬性。

Sta
將 STAThreadAttribute 屬性套用至您程式的進入點。

備註

只有在建置 .exe 時,設定執行緒屬性才有效,因為它會影響主執行緒的進入點。

如果您使用預設進入點(例如 main 或 wmain),請使用 /CLRTHREADATTRIBUTE 或將執行緒屬性 (STAThreadAttribute 或 MTAThreadAttribute) 放在預設專案函式上來指定執行緒模型。

如果您使用非預設進入點,請使用 /CLRTHREADATTRIBUTE 或將執行緒屬性放在非預設進入函式上來指定執行緒模型,然後使用 /ENTRY 指定非預設進入點

如果原始程式碼中指定的執行緒模型與以 /CLRTHREADATTRIBUTE 指定的執行緒模型不一致,連結器會忽略 /CLRTHREADATTRIBUTE,並套用原始程式碼中指定的執行緒模型。

例如,如果您的 CLR 程式裝載使用單一執行緒的 COM 物件,則必須使用單一執行緒。 如果您的 CLR 程式使用多執行緒處理,就無法裝載使用單一執行緒的 COM 物件。

在 Visual Studio 開發環境中設定這個連結器選項

  1. 開啟專案的 [屬性頁] 對話方塊。 如需詳細資料,請參閱在 Visual Studio 中設定 C ++ 編譯器和組建屬性

  2. 選取 [組態屬性 > ] 連結器 > [ 進階 ] 屬性頁。

  3. 修改 CLR 執行緒屬性 屬性。

若要以程式設計方式設定這個連結器選項

  1. 請參閱 CLRThreadAttribute

另請參閱

MSVC 連結器參考
MSVC 連結器選項