18 #ifndef _DECAF_UTIL_CONCURRENT_LOCKS_REENTRANTLOCK_H_ 19 #define _DECAF_UTIL_CONCURRENT_LOCKS_REENTRANTLOCK_H_ 28 namespace concurrent {
158 virtual void lockInterruptibly();
181 virtual bool tryLock();
234 virtual bool tryLock(
long long time,
const TimeUnit& unit );
245 virtual void unlock();
304 int getHoldCount()
const;
346 bool isHeldByCurrentThread()
const;
354 bool isLocked()
const;
370 std::string toString()
const;
379 int getQueueLength()
const;
393 int getWaitQueueLength(
Condition* condition)
const;
405 bool hasWaiters(
Condition* condition)
const;
410 bool hasQueuedThreads()
const;
The root interface in the collection hierarchy.
Definition: Collection.h:68
Condition factors out the Mutex monitor methods (wait, notify and notifyAll) into distinct objects to...
Definition: Condition.h:132
A TimeUnit represents time durations at a given unit of granularity and provides utility methods to c...
Definition: TimeUnit.h:62
A reentrant mutual exclusion Lock with extended capabilities.
Definition: ReentrantLock.h:80
A Thread is a concurrent unit of execution.
Definition: Thread.h:64
#define DECAF_API
Definition: Config.h:29
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements...
Definition: AprPool.h:25
Lock implementations provide more extensive locking operations than can be obtained using synchronize...
Definition: Lock.h:99