#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. |
1.3.6