다음을 통해 공유


FreeLibraryAndExitThread 함수(libloaderapi.h)

로드된 DLL(동적 연결 라이브러리)의 참조 수를 1씩 줄인 다음 ExitThread 를 호출하여 호출 스레드를 종료합니다. 함수가 반환되지 않습니다.

구문

void FreeLibraryAndExitThread(
  [in] HMODULE hLibModule,
  [in] DWORD   dwExitCode
);

매개 변수

[in] hLibModule

함수의 참조 수가 감소하는 DLL 모듈에 대한 핸들입니다. LoadLibrary 또는 GetModuleHandleEx 함수는 이 핸들을 반환합니다.

이 함수는 모듈에 대한 참조 수를 유지하지 않으므로 GetModuleHandleEx 함수(GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT 플래그 포함) 또는 GetModuleHandle 함수에서 반환된 핸들을 사용하여 이 함수를 호출하지 마세요.

[in] dwExitCode

호출 스레드에 대한 종료 코드입니다.

반환 값

없음

설명

FreeLibraryAndExitThread 함수를 사용하면 DLL 내에서 실행되는 스레드가 실행 중인 DLL을 안전하게 해제하고 스스로 종료할 수 있습니다. FreeLibraryExitThread를 별도로 호출하는 경우 경합 상태가 존재합니다. ExitThread가 호출되기 전에 라이브러리를 언로드할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 libloaderapi.h(Windows.h 포함)
라이브러리 Kernel32.lib
DLL Kernel32.dll

참고 항목

DisableThreadLibraryCalls

동적 링크 라이브러리 함수

ExitThread

FreeLibrary

런타임 동적 연결