class Poco::SynchronizedObject
Overview
This class aggregates a Mutex and an Event and can act as a base class for all objects requiring synchronization in a multithreaded scenario. Moreā¦
#include <SynchronizedObject.h> class SynchronizedObject { public: // typedefs typedef Poco::ScopedLock<SynchronizedObject> ScopedLock; // methods void lock() const; bool tryLock() const; void unlock() const; void notify() const; void wait() const; void wait(long milliseconds) const; bool tryWait(long milliseconds) const; };
Detailed Documentation
This class aggregates a Mutex and an Event and can act as a base class for all objects requiring synchronization in a multithreaded scenario.
Construction
virtual ~SynchronizedObject()
Destroys the object.
Methods
void lock() const
Locks the object.
Blocks if the object is locked by another thread.
bool tryLock() const
Tries to lock the object.
Returns false immediately if the object is already locked by another thread Returns true if the object was successfully locked.
void unlock() const
Unlocks the object so that it can be locked by other threads.
void notify() const
Signals the object.
Exactly only one thread waiting for the object can resume execution.
void wait() const
Waits for the object to become signalled.
void wait(long milliseconds) const
Waits for the object to become signalled.
Throws a TimeoutException if the object does not become signalled within the specified time interval.
bool tryWait(long milliseconds) const
Waits for the object to become signalled.
Returns true if the object became signalled within the specified time interval, false otherwise.