beecrypt::lang::Object::Object::Monitor Class Reference

This class is used to emulate Java's lock/wait/notify methods. More...

#include <Object.h>

Inheritance diagram for beecrypt::lang::Object::Object::Monitor:

Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~Monitor ()
virtual void interrupt (bc_threadid_t)=0
virtual bool interrupted (bc_threadid_t)
virtual bool isInterrupted (bc_threadid_t)
virtual bool isLocked ()
virtual void lock ()=0
virtual void lockInterruptibly ()=0 throw (InterruptedException)
virtual bool tryLock ()=0
virtual void notify ()=0
virtual void notifyAll ()=0
virtual void unlock ()=0
virtual void wait (jlong timeout)=0 throw (InterruptedException)

Static Public Member Functions

static MonitorgetInstance (bool fair=false)

Protected Member Functions

void internal_state_lock ()
void internal_state_unlock ()
 Monitor ()

Protected Attributes

bc_threadid_t _owner
bc_threadid_t _interruptee
bc_mutex_t _lock
volatile unsigned int _lock_count

Friends

class Object


Detailed Description

This class is used to emulate Java's lock/wait/notify methods.

Constructor & Destructor Documentation

beecrypt::lang::Object::Object::Monitor::Monitor (  )  [protected]

virtual beecrypt::lang::Object::Object::Monitor::~Monitor (  )  [inline, virtual]


Member Function Documentation

static Monitor* beecrypt::lang::Object::Object::Monitor::getInstance ( bool  fair = false  )  [static]

void beecrypt::lang::Object::Object::Monitor::internal_state_lock (  )  [protected]

void beecrypt::lang::Object::Object::Monitor::internal_state_unlock (  )  [protected]

virtual void beecrypt::lang::Object::Object::Monitor::interrupt ( bc_threadid_t   )  [pure virtual]

virtual bool beecrypt::lang::Object::Object::Monitor::interrupted ( bc_threadid_t   )  [virtual]

virtual bool beecrypt::lang::Object::Object::Monitor::isInterrupted ( bc_threadid_t   )  [virtual]

virtual bool beecrypt::lang::Object::Object::Monitor::isLocked (  )  [virtual]

virtual void beecrypt::lang::Object::Object::Monitor::lock (  )  [pure virtual]

virtual void beecrypt::lang::Object::Object::Monitor::lockInterruptibly (  )  throw (InterruptedException) [pure virtual]

virtual void beecrypt::lang::Object::Object::Monitor::notify (  )  [pure virtual]

virtual void beecrypt::lang::Object::Object::Monitor::notifyAll (  )  [pure virtual]

virtual bool beecrypt::lang::Object::Object::Monitor::tryLock (  )  [pure virtual]

virtual void beecrypt::lang::Object::Object::Monitor::unlock (  )  [pure virtual]

virtual void beecrypt::lang::Object::Object::Monitor::wait ( jlong  timeout  )  throw (InterruptedException) [pure virtual]


Friends And Related Function Documentation

friend class Object [friend]


Member Data Documentation

bc_threadid_t beecrypt::lang::Object::Object::Monitor::_interruptee [protected]

bc_mutex_t beecrypt::lang::Object::Object::Monitor::_lock [protected]

volatile unsigned int beecrypt::lang::Object::Object::Monitor::_lock_count [protected]

bc_threadid_t beecrypt::lang::Object::Object::Monitor::_owner [protected]


The documentation for this class was generated from the following file:

Generated on Fri Jun 19 13:39:42 2009 for BeeCrypt C++ by  doxygen 1.5.8