12 #ifndef ROOT_TAtomicCountPthread
13 #define ROOT_TAtomicCountPthread
38 mutable pthread_mutex_t fMutex;
40 TAtomicCount(
const TAtomicCount &);
41 TAtomicCount &operator=(
const TAtomicCount &);
47 LockGuard(pthread_mutex_t &m): fM(m) { pthread_mutex_lock(&fM); }
48 ~LockGuard() { pthread_mutex_unlock(&fM); }
52 explicit TAtomicCount(Long_t v): fCnt(v) {
53 pthread_mutex_init(&fMutex, 0);
56 ~TAtomicCount() { pthread_mutex_destroy(&fMutex); }
59 LockGuard lock(fMutex);
64 LockGuard lock(fMutex);
68 operator long()
const {
69 LockGuard lock(fMutex);
74 LockGuard lock(fMutex);
79 LockGuard lock(fMutex);