MySQL 9.0.0
Source Code Documentation
vtoken_lock_cleanup Class Reference

Helper class to dispose of the rwlocks at DLL/so unload. More...

Public Member Functions

 vtoken_lock_cleanup ()=default
 
 ~vtoken_lock_cleanup ()
 
void activate ()
 
bool is_active ()
 

Private Attributes

atomic_boolean activated
 

Detailed Description

Helper class to dispose of the rwlocks at DLL/so unload.

We can't release the rwlock at plugin or UDF unload since we're using it to synchronize both.

So we need to rely on the shared object deinitialization function to dispose of lock up.

For that we declare a helper class with a destructor that disposes of the global object and declare one global variable cleanup_lock of that class and expect the C library to call the destructor when unloading the DLL/so.

Constructor & Destructor Documentation

◆ vtoken_lock_cleanup()

vtoken_lock_cleanup::vtoken_lock_cleanup ( )
default

◆ ~vtoken_lock_cleanup()

vtoken_lock_cleanup::~vtoken_lock_cleanup ( )
inline

Member Function Documentation

◆ activate()

void vtoken_lock_cleanup::activate ( )
inline

◆ is_active()

bool vtoken_lock_cleanup::is_active ( )
inline

Member Data Documentation

◆ activated

atomic_boolean vtoken_lock_cleanup::activated
private

The documentation for this class was generated from the following file: