Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

ACE_RWLock_Invariants Class Reference

RWLock Invariants. More...

#include <Token_Invariants.h>

List of all members.

Public Methods

 ACE_RWLock_Invariants (void)
 Default construction.

int writer_acquired (void)
int reader_acquired (void)
void releasing (void)
 Updates internal database.

 ACE_RWLock_Invariants (const ACE_RWLock_Invariants &rhs)
 Copy construction.

void operator= (const ACE_RWLock_Invariants &rhs)
 Copy.

void dump (void) const
 Dump the state of the class.


Private Attributes

int writers_
 Number of owning writers.

int readers_
 Number of owning readers.


Detailed Description

RWLock Invariants.

Preserve the following invariants:

  1. Only one writer at a time.
  2. If there is an owning writer, there are no owning readers.


Constructor & Destructor Documentation

ACE_RWLock_Invariants::ACE_RWLock_Invariants void   
 

Default construction.

ACE_RWLock_Invariants::ACE_RWLock_Invariants const ACE_RWLock_Invariants &    rhs
 

Copy construction.


Member Function Documentation

void ACE_RWLock_Invariants::dump void    const
 

Dump the state of the class.

void ACE_RWLock_Invariants::operator= const ACE_RWLock_Invariants &    rhs
 

Copy.

int ACE_RWLock_Invariants::reader_acquired void   
 

Returns 1 on success, 0 when an invariant has been violated and -1 on error.

void ACE_RWLock_Invariants::releasing void   
 

Updates internal database.

int ACE_RWLock_Invariants::writer_acquired void   
 

Returns 1 on success, 0 when an invariant has been violated and -1 on error.


Member Data Documentation

int ACE_RWLock_Invariants::readers_ [private]
 

Number of owning readers.

int ACE_RWLock_Invariants::writers_ [private]
 

Number of owning writers.


The documentation for this class was generated from the following files:
Generated on Fri Apr 2 16:53:03 2004 for ACE by doxygen1.2.18