My Project
|
Public Member Functions | |
MDL_map_partition () | |
~MDL_map_partition () | |
MDL_lock * | find_or_insert (const MDL_key *mdl_key, my_hash_value_type hash_value) |
void | remove (MDL_lock *lock) |
my_hash_value_type | get_key_hash (const MDL_key *mdl_key) const |
A partition in a collection of all MDL locks. MDL_map is partitioned for scalability reasons. Maps MDL_key to MDL_lock instances.
Initialize the partition in the container with all MDL locks.
Destroy the partition in container for all MDL locks.
MDL_lock * MDL_map_partition::find_or_insert | ( | const MDL_key * | mdl_key, |
my_hash_value_type | hash_value | ||
) | [inline] |
Find MDL_lock object corresponding to the key and hash value in MDL_map partition, create it if it does not exist.
non-NULL | - Success. MDL_lock instance for the key with locked MDL_lock::m_rwlock. |
NULL | - Failure (OOM). |
void MDL_map_partition::remove | ( | MDL_lock * | lock | ) | [inline] |