XrdSysCondVar Class Reference

#include <XrdSysPthread.hh>

List of all members.

Public Member Functions

void Lock ()
void Signal ()
void Broadcast ()
void UnLock ()
int Wait ()
int Wait (int sec)
int WaitMS (int msec)
 XrdSysCondVar (int relm=1, const char *cid=0)
 ~XrdSysCondVar ()

Private Attributes

pthread_cond_t cvar
pthread_mutex_t cmut
int relMutex
const char * condID


Detailed Description

Definition at line 36 of file XrdSysPthread.hh.


Constructor & Destructor Documentation

XrdSysCondVar::XrdSysCondVar ( int  relm = 1,
const char *  cid = 0 
) [inline]

Definition at line 58 of file XrdSysPthread.hh.

References cmut, condID, cvar, NULL, pthread_cond_init(), pthread_mutex_init(), and relMutex.

XrdSysCondVar::~XrdSysCondVar (  )  [inline]

Definition at line 64 of file XrdSysPthread.hh.

References cmut, cvar, pthread_cond_destroy(), and pthread_mutex_destroy().


Member Function Documentation

void XrdSysCondVar::Lock (  )  [inline]

Definition at line 40 of file XrdSysPthread.hh.

References cmut, and pthread_mutex_lock().

Referenced by XrdOfsHanXpr::add2Q(), XrdCmsClientMsg::Alloc(), XrdClientConn::CheckREQConnectWaitState(), XrdClientConn::CheckREQPauseState(), XrdSysSemWait::CondWait(), XrdClientConnectionMgr::Connect(), XrdOfsHanXpr::Deref(), XrdOfsHanXpr::Get(), XrdClient::IsOpen_inprogress(), XrdClient::IsOpen_wait(), XrdCmsClientMsg::Lock(), XrdSysCondVarHelper::Lock(), XrdBuffManager::Obtain(), XrdSysSemWait::Post(), XrdClientConn::ProcessAsynResp(), XrdClient::Read(), XrdBuffManager::Release(), XrdCmsClientMsg::RemFromWaitQ(), XrdBuffManager::Reshape(), XrdBuffManager::Set(), XrdOfsHanXpr::Set(), XrdClientConn::SetREQDelayedConnectState(), XrdClientConn::SetREQPauseState(), XrdBuffManager::Stats(), XrdLink::Terminate(), XrdClient::TerminateOpenAttempt(), Wait(), XrdSysSemWait::Wait(), WaitMS(), XrdClientConn::WaitResp(), XrdSysCondVarHelper::XrdSysCondVarHelper(), and XrdClient::~XrdClient().

void XrdSysCondVar::Signal (  )  [inline]

Definition at line 42 of file XrdSysPthread.hh.

References cmut, cvar, pthread_cond_signal(), pthread_mutex_lock(), pthread_mutex_unlock(), and relMutex.

Referenced by XrdOfsHanXpr::add2Q(), XrdLink::Close(), XrdCpMthrQueue::GetBuffer(), XrdBuffManager::Obtain(), XrdSysSemWait::Post(), XrdClientConn::ProcessAsynResp(), XrdMonCtrBuffer::push_back(), XrdCmsClientMsg::Reply(), and XrdScheduler::Schedule().

void XrdSysCondVar::Broadcast (  )  [inline]

Definition at line 47 of file XrdSysPthread.hh.

References cmut, cvar, pthread_cond_broadcast(), pthread_mutex_lock(), pthread_mutex_unlock(), and relMutex.

Referenced by XrdClientConnectionMgr::Connect(), XrdClient::ProcessUnsolicitedMsg(), XrdClientConn::SetREQDelayedConnectState(), XrdClientConn::SetREQPauseState(), XrdClient::TerminateOpenAttempt(), and XrdClientConn::UnPinCacheBlk().

void XrdSysCondVar::UnLock ( void   )  [inline]

Definition at line 52 of file XrdSysPthread.hh.

References cmut, and pthread_mutex_unlock().

Referenced by XrdOfsHanXpr::add2Q(), XrdClientConn::CheckREQConnectWaitState(), XrdClientConn::CheckREQPauseState(), XrdLink::Close(), XrdSysSemWait::CondWait(), XrdClientConnectionMgr::Connect(), XrdOfsHanXpr::Deref(), XrdOfsHanXpr::Get(), XrdClient::IsOpen_inprogress(), XrdClient::IsOpen_wait(), XrdSysCondVarHelper::Lock(), XrdBuffManager::Obtain(), XrdSysSemWait::Post(), XrdClientConn::ProcessAsynResp(), XrdClient::Read(), XrdCmsClientMsg::Recycle(), XrdBuffManager::Release(), XrdCmsClientMsg::RemFromWaitQ(), XrdCmsClientMsg::Reply(), XrdBuffManager::Reshape(), XrdBuffManager::Set(), XrdOfsHanXpr::Set(), XrdClientConn::SetREQDelayedConnectState(), XrdClientConn::SetREQPauseState(), XrdBuffManager::Stats(), XrdLink::Terminate(), XrdClient::TerminateOpenAttempt(), XrdCmsClientMsg::UnLock(), XrdSysCondVarHelper::UnLock(), Wait(), XrdSysSemWait::Wait(), WaitMS(), XrdClientConn::WaitResp(), and XrdClient::~XrdClient().

int XrdSysCondVar::Wait (  ) 

Definition at line 100 of file XrdSysPthread.cc.

References cmut, cvar, Lock(), pthread_cond_wait(), relMutex, and UnLock().

Referenced by XrdClientConn::CheckREQConnectWaitState(), XrdClientConn::CheckREQPauseState(), XrdClientConnectionMgr::Connect(), XrdClientConn::DoWriteHardCheckPoint(), XrdOfsHanXpr::Get(), XrdClient::IsOpen_wait(), XrdMonCtrBuffer::pop_front(), XrdCpMthrQueue::PutBuffer(), XrdClient::Read(), XrdBuffManager::Reshape(), XrdLink::Terminate(), XrdScheduler::TimeSched(), XrdSysSemWait::Wait(), XrdCmsClientMsg::Wait4Reply(), XrdClient::WaitForNewAsyncData(), and XrdClientConn::WaitResp().

int XrdSysCondVar::Wait ( int  sec  ) 

Definition at line 114 of file XrdSysPthread.cc.

References cmut, cvar, ETIMEDOUT, Lock(), pthread_cond_timedwait(), relMutex, tval, and UnLock().

int XrdSysCondVar::WaitMS ( int  msec  ) 

Definition at line 141 of file XrdSysPthread.cc.

References cmut, cvar, ETIMEDOUT, gettimeofday(), Lock(), pthread_cond_timedwait(), relMutex, tval, and UnLock().


Member Data Documentation

pthread_cond_t XrdSysCondVar::cvar [private]

Definition at line 69 of file XrdSysPthread.hh.

Referenced by Broadcast(), Signal(), Wait(), WaitMS(), XrdSysCondVar(), and ~XrdSysCondVar().

pthread_mutex_t XrdSysCondVar::cmut [private]

Definition at line 70 of file XrdSysPthread.hh.

Referenced by Broadcast(), Lock(), Signal(), UnLock(), Wait(), WaitMS(), XrdSysCondVar(), and ~XrdSysCondVar().

int XrdSysCondVar::relMutex [private]

Definition at line 71 of file XrdSysPthread.hh.

Referenced by Broadcast(), Signal(), Wait(), WaitMS(), and XrdSysCondVar().

const char* XrdSysCondVar::condID [private]

Definition at line 72 of file XrdSysPthread.hh.

Referenced by XrdSysCondVar().


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:50:47 2011 for ROOT_528-00b_version by  doxygen 1.5.1