#include <Configurable_Refcount.h>
Collaboration diagram for TAO_Configurable_Refcount:
Public Types | |
enum | Lock_Type { TAO_NULL_LOCK, TAO_THREAD_LOCK } |
Public Member Functions | |
TAO_Configurable_Refcount (Lock_Type type=TAO_THREAD_LOCK, unsigned long value=1) | |
unsigned long | increment (void) |
unsigned long | decrement (void) |
unsigned long | value (void) const |
Private Attributes | |
Lock_Type | type_ |
ACE_Atomic_Op< ACE_SYNCH_NULL_MUTEX, unsigned long > | null_refcount_ |
ACE_Atomic_Op< TAO_SYNCH_MUTEX, unsigned long > | mutex_refcount_ |
Definition at line 37 of file Configurable_Refcount.h.
|
Definition at line 40 of file Configurable_Refcount.h.
00041 { 00042 TAO_NULL_LOCK, 00043 TAO_THREAD_LOCK 00044 }; |
|
Definition at line 7 of file Configurable_Refcount.inl.
00010 : type_ (type), 00011 null_refcount_ (value), 00012 mutex_refcount_ (value) 00013 { 00014 } |
|
Definition at line 30 of file Configurable_Refcount.inl. References mutex_refcount_, null_refcount_, TAO_NULL_LOCK, and TAO_THREAD_LOCK. Referenced by TAO_Profile::_decr_refcnt(), and CORBA::Object::_tao_actual_remove_ref().
00031 { 00032 switch(this->type_) 00033 { 00034 case TAO_NULL_LOCK: 00035 return --this->null_refcount_; 00036 case TAO_THREAD_LOCK: 00037 default: 00038 return --this->mutex_refcount_; 00039 } 00040 } |
|
Definition at line 17 of file Configurable_Refcount.inl. References mutex_refcount_, null_refcount_, TAO_NULL_LOCK, and TAO_THREAD_LOCK. Referenced by TAO_Profile::_incr_refcnt(), and CORBA::Object::_tao_actual_add_ref().
00018 { 00019 switch(this->type_) 00020 { 00021 case TAO_NULL_LOCK: 00022 return this->null_refcount_++; 00023 case TAO_THREAD_LOCK: 00024 default: 00025 return this->mutex_refcount_++; 00026 } 00027 } |
|
Definition at line 43 of file Configurable_Refcount.inl. References mutex_refcount_, null_refcount_, TAO_NULL_LOCK, TAO_THREAD_LOCK, ACE_Atomic_Op< TAO_SYNCH_MUTEX, unsigned long >::value(), and ACE_Atomic_Op< ACE_SYNCH_NULL_MUTEX, unsigned long >::value().
00044 { 00045 switch(this->type_) 00046 { 00047 case TAO_NULL_LOCK: 00048 return this->null_refcount_.value (); 00049 case TAO_THREAD_LOCK: 00050 default: 00051 return this->mutex_refcount_.value (); 00052 } 00053 } |
|
Definition at line 57 of file Configurable_Refcount.h. Referenced by decrement(), increment(), and value(). |
|
Definition at line 56 of file Configurable_Refcount.h. Referenced by decrement(), increment(), and value(). |
|
Definition at line 55 of file Configurable_Refcount.h. |