Loading...
Searching...
No Matches
QC_RWLock.dox.h
namespace Qore {
namespace Thread {
class RWLock : public AbstractSmartLock {
public:
constructor();
public:
copy();
public:
destructor();
public:
int getReadWaiting();
public:
int getWriteWaiting();
public:
bool lockOwner();
public:
int numReaders();
public:
nothing readLock();
public:
int readLock(timeout timeout_ms);
public:
bool readLockOwner();
public:
nothing readUnlock();
public:
int tryReadLock();
public:
int tryWriteLock();
public:
int writeLock(timeout timeout_ms);
public:
nothing writeLock();
public:
bool writeLockOwner();
public:
nothing writeUnlock();
};
}
}
Qore::Thread::AbstractSmartLock
The abstract base class for locks that support the internal API for use with the Condition class.
Definition: QC_AbstractSmartLock.dox.h:15
Qore::Thread::RWLock
The RWLock class implements a read-write thread lock.
Definition: QC_RWLock.dox.h:40
Qore::Thread::RWLock::writeLock
int writeLock(timeout timeout_ms)
Acquires the write lock with a timeout value; blocks if the read lock is already acquired by another ...
Qore::Thread::RWLock::readLock
int readLock(timeout timeout_ms)
Acquires the read lock with a timeout value; blocks if the write lock is already acquired by another ...
Qore::Thread::RWLock::writeLock
nothing writeLock()
Acquires the write lock; blocks if the read lock is already acquired by another thread.
Qore::Thread::RWLock::readUnlock
nothing readUnlock()
Decrements the read lock counter and releases the read lock if the counter is zero....
Qore::Thread::RWLock::tryWriteLock
int tryWriteLock()
Acquires the write lock only if it can be acquired immediately.
Qore::Thread::RWLock::constructor
constructor()
Creates the RWLock object.
Qore::Thread::RWLock::readLockOwner
bool readLockOwner()
Returns True if the current thread is holding the read lock, False if not.
Qore::Thread::RWLock::destructor
destructor()
Destroys the RWLock object.
Qore::Thread::RWLock::writeUnlock
nothing writeUnlock()
Releases the write lock, if any readers are waiting, wakes up all readers, otherwise if any writers a...
Qore::Thread::RWLock::numReaders
int numReaders()
Returns the read lock count.
Qore::Thread::RWLock::writeLockOwner
bool writeLockOwner()
Returns True if the current thread is holding the write lock, False if not.
Qore::Thread::RWLock::copy
copy()
Creates a new RWLock object, not based on the original.
Qore::Thread::RWLock::getWriteWaiting
int getWriteWaiting()
Returns the number of threads waiting on the write lock.
Qore::Thread::RWLock::getReadWaiting
int getReadWaiting()
Returns the number of threads waiting on the read lock.
Qore::Thread::RWLock::readLock
nothing readLock()
Acquires the read lock; blocks if the write lock is already acquired by another thread.
Qore::Thread::RWLock::tryReadLock
int tryReadLock()
Acquires the read lock only if it can be acquired immediately.
Qore::Thread::RWLock::lockOwner
bool lockOwner()
Returns True if the current thread is holding either the read lock or the write lock,...
Qore
main Qore-language namespace
Definition: Pseudo_QC_All.dox.h:3