/Zc:tlsGuards (Comprobación de la inicialización de TLS)

La /Zc:tlsGuards opción del compilador genera comprobaciones en tiempo de ejecución para la inicialización del almacenamiento local de subprocesos (TLS) en dll.

Sintaxis

/Zc:tlsGuards[-]

Comentarios

La /Zc:tlsGuards opción del compilador habilita comprobaciones para la inicialización de variables locales de subprocesos en archivos DLL. Anteriormente, las variables locales de subprocesos en los archivos DLL no se inicializaban de manera correcta. Además de en el subproceso que cargó el archivo DLL, no se inicializaban antes de usarse por primera vez en los subprocesos que existían antes de que se cargara el archivo DLL. La /Zc:tlsGuards opción habilita el código que corrige este defecto. Las variables locales de subprocesos de este tipo de archivo DLL se inicializan inmediatamente antes de su primer uso en esos subprocesos.

La /Zc:tlsGuards opción es nueva en Visual Studio 2019, versión 16.5. Esta opción está activada de forma predeterminada en todos los modos del compilador. El nuevo comportamiento de las pruebas para la inicialización en usos de variables locales para subprocesos se puede deshabilitar mediante la /Zc:tlsGuards- opción del compilador. Para deshabilitar las comprobaciones de variables locales de subprocesos específicas, use el [[msvc::no_tls_guard]] atributo .

Para establecer esta opción del compilador en Visual Studio

  1. Abra el cuadro de diálogo Páginas de propiedades del proyecto. Para más información, vea Establecimiento del compilador de C++ y de propiedades de compilación en Visual Studio.

  2. Seleccione la página de propiedades Propiedades de configuración>C/C++>Línea de comandos.

  3. En Opciones adicionales, agregue /Zc:tlsGuards. Haga clic en Aceptar o en Aplicar para guardar los cambios.

Consulte también

/Zc (Conformidad)\