/GT
(Obsługa magazynu lokalnego wątków bezpiecznych pod światłowodem)
Obsługuje bezpieczeństwo światłowodów dla danych przydzielonych przy użyciu magazynu statycznego wątku lokalnego, czyli danych przydzielonych za pomocą __declspec(thread)
polecenia .
Składnia
/GT
Uwagi
Dane zadeklarowane za pomocą __declspec(thread)
odwołania są przywołyne za pośrednictwem tablicy magazynu lokalnego wątku (TLS). Tablica TLS to tablica adresów, które system obsługuje dla każdego wątku. Każdy adres w tej tablicy zawiera lokalizację danych magazynu lokalnego wątku.
Światłowody to lekki obiekt, który składa się ze stosu i kontekstu rejestru i można go zaplanować na różnych wątkach. Światłowod może działać na dowolnym wątku. Ponieważ światłowod może zostać zamienione i ponownie uruchomione później w innym wątku, kompilator nie może buforować adresu tablicy TLS ani zoptymalizować go jako wspólnego podexpressionu w wywołaniu funkcji. /GT
zapobiega takim optymalizacjom.
Aby ustawić tę opcję kompilatora w środowisku programowania Visual Studio
Otwórz okno dialogowe Strony właściwości projektu. Aby uzyskać szczegółowe informacje, zobacz Set C++ compiler and build properties in Visual Studio (Ustawianie właściwości kompilatora języka C++ i kompilowania w programie Visual Studio).
Wybierz stronę właściwości>Właściwości konfiguracji C/C++>Optimization.
Zmodyfikuj właściwość Enable Fiber-safe Optimizations (Włącz optymalizacje bezpieczne światłowodowo ).
Aby programowo ustawić tę opcję kompilatora
- Zobacz: EnableFiberSafeOptimizations.
Zobacz też
Opcje kompilatora MSVC
Składnia wiersza polecenia kompilatora MSVC