carb::extras::unloadLibrary

Defined in carb/extras/Library.h

inline void carb::extras::unloadLibrary(LibraryHandle libraryHandle)

Unloads a loaded library.

Remark

This unloads one reference to a library that was loaded by loadLibrary(). Note that this may not actually unload the library from the process if other references to it still exist. When the last reference to an unpinned library is removed, that library will be removed from the process’s memory space.

Note

Once a library has been unloaded from memory, the handle to it cannot be safely used any more. Attempting to use it may result in undefined behaviour. Effectively, as soon as a handle is passed in here, it should be discarded. Even though the module may remain in memory, the handle should be treated as though it has been freed upon return from here.

Parameters

libraryHandle[in] The handle to the library to unload. This should have been returned by a previous call to loadLibrary(). This may not be nullptr.

Returns

No return value.