Bagikan melalui


/Zc:tlsGuards (Periksa inisialisasi TLS)

Opsi /Zc:tlsGuards kompilator menghasilkan pemeriksaan runtime untuk inisialisasi penyimpanan lokal utas (TLS) di DLL.

Sintaks

/Zc:tlsGuards[-]

Keterangan

Opsi /Zc:tlsGuards pengkompilasi memungkinkan pemeriksaan inisialisasi variabel thread-local di DLL. Sebelumnya, variabel lokal utas dalam DLL tidak diinisialisasi dengan benar. Selain pada utas yang memuat DLL, variabel tersebut tidak diinisialisasi sebelum digunakan terlebih dahulu pada utas yang ada sebelum DLL dimuat. Opsi /Zc:tlsGuards mengaktifkan kode yang mengoreksi cacat ini. Variabel lokal utas dalam DLL seperti itu segera diinisialisasi sebelum penggunaan pertamanya pada utas tersebut.

Opsi /Zc:tlsGuards ini baru di Visual Studio 2019 versi 16.5. Opsi ini aktif secara default di semua mode pengkompilasi. Perilaku baru pengujian untuk inisialisasi pada penggunaan variabel thread-local dapat dinonaktifkan dengan menggunakan /Zc:tlsGuards- opsi pengkompilasi. Untuk menonaktifkan pemeriksaan variabel thread-local tertentu, gunakan [[msvc::no_tls_guard]] atribut .

Untuk mengatur opsi pengkompilasi ini di Visual Studio

  1. Buka kotak dialog Halaman Properti proyek. Untuk detailnya, lihat Mengatur pengkompilasi C++ dan membuat properti di Visual Studio.

  2. Pilih halaman properti Properti>Konfigurasi C/C++>Baris Perintah.

  3. Di Opsi tambahan, tambahkan /Zc:tlsGuards. Pilih OK atau Terapkan untuk menyimpan perubahan Anda.

Lihat juga

/Zc (Kesuaian)\