共用方式為


/GT (支援光纖安全線程本機儲存體)

支援使用靜態執行緒本機儲存體配置之資料的光纖安全性,也就是使用 __declspec(thread) 配置的資料。

語法

/GT

備註

使用 __declspec(thread) 宣告的資料會透過執行緒本機儲存體 (TLS) 陣列來參考。 TLS 陣列是系統針對每個執行緒維護的位址陣列。 此陣列中的每個位址都會提供執行緒本機儲存體資料的位置。

Fiber 是一個輕量型物件,由堆疊和暫存器內容組成,而且可以在各種執行緒上排程。 光纖可以在任何執行緒上執行。 因為光纖可能會在稍後在不同的執行緒上交換並重新啟動,所以編譯器不得快取 TLS 陣列的位址,或將其優化為函式呼叫的一般子運算式。 /GT 防止這類優化。

在 Visual Studio 開發環境中設定這個編譯器選項

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

  2. 選取 [ 組態屬性 > C/C++ > 優化 ] 屬性頁面。

  3. 修改 Enable Fiber-safe Optimizations 屬性。

若要以程式方式設定這個編譯器選項

另請參閱

MSVC 編譯器選項
MSVC 編譯器命令列語法