| library: libCore #include "TVirtualMutex.h" |
| Inheritance Chart: | |||||||||||||
|
public:
virtual ~TVirtualMutex()
Int_t Acquire()
static TClass* Class()
virtual Int_t CleanUp()
virtual TVirtualMutex* Factory(Bool_t = kFALSE)
virtual TClass* IsA() const
virtual Int_t Lock()
TVirtualMutex& operator=(const TVirtualMutex&)
Int_t Release()
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
virtual Int_t TryLock()
virtual Int_t UnLock()
TVirtualMutex
This class implements a mutex interface. The actual work is done via
TMutex which is available as soon as the thread library is loaded.
and
TLockGuard
This class provides mutex resource management in a guaranteed and
exception safe way. Use like this:
{
TLockGuard guard(mutex);
... // do something
}
when guard goes out of scope the mutex is unlocked in the TLockGuard
destructor. The exception mechanism takes care of calling the dtors
of local objects so it is exception safe.