GSI Object Oriented Online Offline (Go4) GO4-6.4.0
|
#include <TGo4LockGuard.h>
Public Member Functions | |
TGo4LockGuard () | |
TGo4LockGuard (int i, bool force=false) | |
TGo4LockGuard (TMutex *mutex=nullptr, Bool_t=kFALSE) | |
virtual | ~TGo4LockGuard () |
Static Public Member Functions | |
static void | LockMainMutex () |
static Int_t | MainMutexLockCount () |
static void | UnLockMainMutex () |
Private Attributes | |
int | dummy |
Bool_t | fbIsLocked {kFALSE} |
We need this flag if first TThread starts in between ctor and dtor. | |
Bool_t | fbIsMainMutex {kFALSE} |
True if the mutex of this lockguard instance is the global go4 main mutex. | |
TMutex * | fxMutex {nullptr} |
Reference to Mutex associated with this lockguard (external or internal) | |
Static Private Attributes | |
static Int_t | fgiLockCount = 0 |
Counts the numbers of locks of the recursive main mutex. | |
static TMutex * | fgxMainMutex = nullptr |
Main Mutex of the go4 system. | |
Definition at line 40 of file TGo4LockGuard.h.
TGo4LockGuard::TGo4LockGuard | ( | TMutex * | mutex = nullptr, |
Bool_t | = kFALSE ) |
Definition at line 23 of file TGo4LockGuard.cxx.
References TGo4LockGuard(), fbIsLocked, fbIsMainMutex, fgiLockCount, fgxMainMutex, and fxMutex.
Referenced by TGo4LockGuard().
|
virtual |
Definition at line 45 of file TGo4LockGuard.cxx.
References ~TGo4LockGuard(), fbIsLocked, fbIsMainMutex, fgiLockCount, and fxMutex.
Referenced by ~TGo4LockGuard().
|
inline |
Definition at line 24 of file TGo4LockGuard.h.
References dummy.
|
inline |
Definition at line 25 of file TGo4LockGuard.h.
References dummy.
|
static |
Definition at line 58 of file TGo4LockGuard.cxx.
References fgxMainMutex, and LockMainMutex().
Referenced by LockMainMutex().
|
static |
Definition at line 53 of file TGo4LockGuard.cxx.
References fgiLockCount, and MainMutexLockCount().
Referenced by MainMutexLockCount().
|
static |
Definition at line 63 of file TGo4LockGuard.cxx.
References fgxMainMutex, and UnLockMainMutex().
Referenced by UnLockMainMutex().
|
private |
Definition at line 28 of file TGo4LockGuard.h.
Referenced by TGo4LockGuard(), and TGo4LockGuard().
|
private |
We need this flag if first TThread starts in between ctor and dtor.
Definition at line 59 of file TGo4LockGuard.h.
Referenced by TGo4LockGuard(), and ~TGo4LockGuard().
|
private |
True if the mutex of this lockguard instance is the global go4 main mutex.
Definition at line 63 of file TGo4LockGuard.h.
Referenced by TGo4LockGuard(), and ~TGo4LockGuard().
|
staticprivate |
Counts the numbers of locks of the recursive main mutex.
Definition at line 72 of file TGo4LockGuard.h.
Referenced by TGo4LockGuard(), ~TGo4LockGuard(), and MainMutexLockCount().
|
staticprivate |
Main Mutex of the go4 system.
Used to protect any memory critical operations. This mutex is applied if lockguard is called without giving external mutex.
Definition at line 69 of file TGo4LockGuard.h.
Referenced by TGo4LockGuard(), LockMainMutex(), and UnLockMainMutex().
|
private |
Reference to Mutex associated with this lockguard (external or internal)
Definition at line 56 of file TGo4LockGuard.h.
Referenced by TGo4LockGuard(), and ~TGo4LockGuard().