/Zc:tlsGuards
(TLS 초기화 확인)
/Zc:tlsGuards
컴파일러 옵션은 DLL에서 TLS(스레드 로컬 스토리지) 초기화에 대한 런타임 검사 생성합니다.
구문
/Zc:tlsGuards
[-
]
설명
/Zc:tlsGuards
컴파일러 옵션을 사용하면 검사 DLL에서 스레드 지역 변수를 초기화할 수 있습니다. 이전에는 DLL의 스레드 지역 변수가 올바르게 초기화되지 않았습니다. DLL을 로드한 스레드를 제외하고 DLL을 로드하기 전에 존재했던 스레드에서 처음 사용하기 전에 초기화되지 않았습니다. 이 /Zc:tlsGuards
옵션은 이 결함을 수정하는 코드를 사용하도록 설정합니다. 이러한 DLL의 스레드 지역 변수가 해당 스레드에서 처음으로 사용되기 전에 즉시 초기화됩니다.
Visual /Zc:tlsGuards
Studio 2019 버전 16.5의 새로운 옵션입니다. 이 옵션은 기본적으로 모든 컴파일러 모드에서 설정됩니다. 컴파일러 옵션을 사용하여 스레드-로컬 변수 사용에 대한 초기화 테스트의 새로운 동작을 /Zc:tlsGuards-
사용하지 않도록 설정할 수 있습니다. 특정 스레드 지역 변수에 대해 검사 사용하지 않도록 설정하려면 특성을 사용합니다[[msvc::no_tls_guard]]
.
Visual Studio에서 이 컴파일러 옵션을 설정하려면
프로젝트의 속성 페이지 대화 상자를 엽니다. 자세한 내용은 Visual Studio에서 C++ 컴파일러 및 빌드 속성 설정을 참조하세요.
구성 속성>C/C++>명령줄 속성 페이지를 선택합니다.
추가 옵션에서 .를 추가합니다
/Zc:tlsGuards
. 확인을 선택하거나 적용하여 변경 내용을 저장합니다.
참고 항목
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기