ucc::Shared Class Reference

An exclusive locking protocol interface base. More...

#include <access.h>

Inheritance diagram for ucc::Shared:

Inheritance graph
[legend]

Public Member Functions

virtual void Shlock (void)=0
 Protocol interface to share lock the object.
virtual void Unlock (void)=0
 Protocol interface to release a lock.
virtual void Share (void)
 Share the lock with other referencers.
virtual void Exclusive (void)
 Convert object to an exclusive lock.
void Lock (void)
 A convience member function for accessing the shared lock.

Detailed Description

An exclusive locking protocol interface base.

This is an abstract class to form objects that will operate under an exclusive lock while being activily referenced by a smart pointer.

Author:
David Sugar <dyfet@gnutelephony.org>

Definition at line 76 of file access.h.


Member Function Documentation

virtual void ucc::Shared::Exclusive ( void   )  [virtual]

Convert object to an exclusive lock.

Many of our shared locking objects such as the "conditional lock" support the ability to switch between shared and exclusive locking modes. This derived protocol member allows one to temporarily assert exclusive locking when tied to such methods.

virtual void ucc::Shared::Share ( void   )  [virtual]

Share the lock with other referencers.

Many of our shared locking objects support the ability to switch between shared and exclusive mode. This derived protocol member allows one to restore the lock to shared mode after it has been made exclusive.


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

Generated on Tue Jul 28 21:43:03 2009 for UCommon by  doxygen 1.5.9