FreeLibraryAndExitThread-Funktion (libloaderapi.h)

Erhöht die Referenzanzahl einer geladenen dynamischen Linkbibliothek (DLL) nach einem, ruft ExitThread dann 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 zum DLL-Modul, dessen Verweis die Funktionsdekrementierung zählt. Die LoadLibrary - oder GetModuleHandleEx-Funktion gibt diesen 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 Referenzanzahl 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 innerhalb einer DLL ausgeführt werden, sicher die DLL freisetzen, in der sie selbst ausführen und beenden. Wenn sie FreeLibrary und ExitThread separat aufrufen würden, würde eine Rennbedingung vorhanden sein. Die Bibliothek könnte nicht geladen werden, bevor ExitThread aufgerufen wird.

Anforderungen

   
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 (enthalten Windows.h)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

DisableThreadLibraryCalls

Funktionen der Dynamischen Verknüpfungsbibliothek

ExitThread

FreeLibrary

Laufzeit dynamische Verknüpfung