tlds
Transactional Operations for Linked Data Structures
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
LockKey Class Reference

#include <lockkey.h>

Collaboration diagram for LockKey:

Public Member Functions

 LockKey ()
 
 ~LockKey ()
 
void Init ()
 
void Uninit ()
 
bool Lock (uint32_t key)
 
void Unlock ()
 

Private Types

typedef std::recursive_timed_mutex LockType
 
typedef
tbb::concurrent_hash_map
< uint32_t, LockType * > 
LockMap
 
typedef std::unordered_set
< LockType * > 
LockSet
 

Private Attributes

LockMap m_lockMap
 

Static Private Attributes

static __thread LockSetm_lockSet
 

Member Typedef Documentation

typedef tbb::concurrent_hash_map<uint32_t, LockType*> LockKey::LockMap
private
typedef std::unordered_set<LockType*> LockKey::LockSet
private
typedef std::recursive_timed_mutex LockKey::LockType
private

Constructor & Destructor Documentation

LockKey::LockKey ( )
inline
LockKey::~LockKey ( )
inline

Member Function Documentation

void LockKey::Init ( )
inline

Here is the caller graph for this function:

bool LockKey::Lock ( uint32_t  key)
inline

Here is the caller graph for this function:

void LockKey::Uninit ( )
inline

Here is the caller graph for this function:

void LockKey::Unlock ( )
inline

Here is the caller graph for this function:

Member Data Documentation

LockMap LockKey::m_lockMap
private
__thread LockKey::LockSet * LockKey::m_lockSet
staticprivate

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