NCBI C++ ToolKit
Classes | Public Types | Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
CInitMutexPool Class Reference

Search Toolkit Book for CInitMutexPool

#include <util/mutex_pool.hpp>

+ Collaboration diagram for CInitMutexPool:

Classes

class  CPoolMutex
 

Public Types

typedef CPoolMutex TMutex
 

Public Member Functions

 CInitMutexPool (void)
 
 ~CInitMutexPool (void)
 

Protected Member Functions

bool AcquireMutex (CInitMutex_Base &init, CRef< TMutex > &mutex, bool force=false)
 
void ReleaseMutex (CInitMutex_Base &init, CRef< TMutex > &mutex)
 

Private Types

typedef list< CRef< TMutex > > TMutexList
 

Private Member Functions

 CInitMutexPool (const CInitMutexPool &)
 
const CInitMutexPooloperator= (const CInitMutexPool &)
 

Private Attributes

TMutexList m_MutexList
 
CFastMutex m_Pool_Mtx
 

Friends

class CInitGuard
 

Detailed Description

Definition at line 57 of file mutex_pool.hpp.

Member Typedef Documentation

◆ TMutex

Definition at line 87 of file mutex_pool.hpp.

◆ TMutexList

typedef list< CRef<TMutex> > CInitMutexPool::TMutexList
private

Definition at line 100 of file mutex_pool.hpp.

Constructor & Destructor Documentation

◆ CInitMutexPool() [1/2]

CInitMutexPool::CInitMutexPool ( void  )

Definition at line 43 of file mutex_pool.cpp.

◆ ~CInitMutexPool()

CInitMutexPool::~CInitMutexPool ( void  )

Definition at line 48 of file mutex_pool.cpp.

◆ CInitMutexPool() [2/2]

CInitMutexPool::CInitMutexPool ( const CInitMutexPool )
private

Member Function Documentation

◆ AcquireMutex()

bool CInitMutexPool::AcquireMutex ( CInitMutex_Base init,
CRef< TMutex > &  mutex,
bool  force = false 
)
protected

Definition at line 53 of file mutex_pool.cpp.

References _ASSERT, init(), local, m_MutexList, and m_Pool_Mtx.

Referenced by CInitGuard::CInitGuard(), and CInitGuard::ForceGuard().

◆ operator=()

const CInitMutexPool& CInitMutexPool::operator= ( const CInitMutexPool )
private

◆ ReleaseMutex()

void CInitMutexPool::ReleaseMutex ( CInitMutex_Base init,
CRef< TMutex > &  mutex 
)
protected

Definition at line 84 of file mutex_pool.cpp.

References _ASSERT, init(), local, m_MutexList, and m_Pool_Mtx.

Friends And Related Function Documentation

◆ CInitGuard

friend class CInitGuard
friend

Definition at line 90 of file mutex_pool.hpp.

Member Data Documentation

◆ m_MutexList

TMutexList CInitMutexPool::m_MutexList
private

Definition at line 101 of file mutex_pool.hpp.

Referenced by AcquireMutex(), and ReleaseMutex().

◆ m_Pool_Mtx

CFastMutex CInitMutexPool::m_Pool_Mtx
private

Definition at line 102 of file mutex_pool.hpp.

Referenced by AcquireMutex(), and ReleaseMutex().


The documentation for this class was generated from the following files:
Modified on Wed Sep 04 15:06:14 2024 by modify_doxy.py rev. 669887