Freigeben über


FreeLibraryAndExitThread-Funktion (libloaderapi.h)

Dekrementiert die Verweisanzahl einer geladenen DLL (Dynamic Link Library) um eins, und ruft dann ExitThread auf, um den aufrufenden Thread zu beenden. Die Funktion gibt nicht zurück.

Syntax

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

Parameter

[in] hLibModule

Ein Handle für das DLL-Modul, dessen Verweisanzahl die Funktionsschritte verringert. Die LoadLibrary - oder GetModuleHandleEx-Funktion gibt dieses Handle zurück.

Rufen Sie diese Funktion nicht mit einem Handle auf, der von der GetModuleHandleEx-Funktion (mit dem GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT Flag) oder der GetModuleHandle-Funktion zurückgegeben wird, da sie keine Verweisanzahl für das Modul beibehalten.

[in] dwExitCode

Der Exitcode für den aufrufenden Thread.

Rückgabewert

Keine

Bemerkungen

Mit der FreeLibraryAndExitThread-Funktion können Threads, die in einer DLL ausgeführt werden, die DLL, in der sie ausgeführt werden, sicher freigeben und sich selbst beenden. Wenn sie FreeLibrary und ExitThread separat aufrufen würden, wäre eine Racebedingung vorhanden. Die Bibliothek kann entladen werden, bevor ExitThread aufgerufen wird.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile libloaderapi.h (einschließlich Windows.h)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

DisableThreadLibraryCalls

Dynamic-Link-Bibliotheksfunktionen

ExitThread

FreeLibrary

Dynamische Laufzeitverknüpfung