ACE  6.1.0
Public Member Functions | Private Attributes
ACE_RWLock_Invariants Class Reference

RWLock Invariants. More...

#include <Token_Invariants.h>

List of all members.

Public Member Functions

 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

Number of owning readers.

Number of owning writers.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines