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.