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 を安全に解放し、自身を終了できます。 FreeLibrary と ExitThread を個別に呼び出す場合は、競合状態が存在します。 ExitThread が呼び出される前に、ライブラリをアンロードできます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP [デスクトップ アプリ | UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | libloaderapi.h (Windows.h を含む) |
Library | Kernel32.lib |
[DLL] | Kernel32.dll |