From: khizmax Date: Tue, 3 Jan 2017 07:55:00 +0000 (+0300) Subject: Fixed doxygen markup X-Git-Tag: v2.2.0~3 X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=61ae239dc677dda939644b60936b4621989ed71d;p=libcds.git Fixed doxygen markup --- diff --git a/cds/gc/details/hp.h b/cds/gc/details/hp.h index 121d4562..21e83f79 100644 --- a/cds/gc/details/hp.h +++ b/cds/gc/details/hp.h @@ -255,22 +255,18 @@ namespace cds { class not_initialized : public std::runtime_error { public: - //@cond not_initialized() : std::runtime_error( "Global Hazard Pointer GarbageCollector is not initialized" ) {} - //@endcond }; /// Not enough Hazard Pointer class too_many_hazard_ptr : public std::length_error { public: - //@cond too_many_hazard_ptr() : std::length_error( "Not enough Hazard Pointer" ) {} - //@endcond }; private: @@ -296,7 +292,6 @@ namespace cds { atomics::atomic m_idOwner; ///< Owner thread id; 0 - the record is free (not owned) atomics::atomic m_bFree; ///< true if record is free (not owned) - //@cond explicit hplist_node( const GarbageCollector& HzpMgr ) : hp_record( HzpMgr ), m_pNextNode( nullptr ), @@ -316,7 +311,6 @@ namespace cds { assert( m_idOwner.load( atomics::memory_order_relaxed ) == OS::c_NullThreadId ); assert( m_bFree.load(atomics::memory_order_relaxed)); } - //@endcond }; atomics::atomic m_pListHead ; ///< Head of GC list diff --git a/cds/urcu/details/base.h b/cds/urcu/details/base.h index 69775788..638eb876 100644 --- a/cds/urcu/details/base.h +++ b/cds/urcu/details/base.h @@ -112,10 +112,10 @@ namespace cds { The \p libcds contains several implementations if signal-handling %RCU: \ref signal_buffered, \ref signal_threaded. - @note The signal-handled %RCU is defined only for UNIX-like systems, not for Windows. + @note The signal-handled %RCU is defined only for UNIX-like systems, not for Windows. - @anchor cds_urcu_type - RCU implementation type + @anchor cds_urcu_type + RCU implementation type There are several internal implementation of RCU (all declared in \p %cds::urcu namespace): - \ref general_instant - general purpose RCU with immediate reclamation @@ -130,8 +130,8 @@ namespace cds { and has the reacher interface that combines interfaces of wrapped class i.e. RCU global part like \p synchronize, and corresponding RCU thread-specific interface like \p access_lock, \p access_unlock and \p retire_ptr. - @anchor cds_urcu_gc - There are several wrapper classes (all declared in \p %cds::urcu namespace) + @anchor cds_urcu_gc + There are several wrapper classes (all declared in \p %cds::urcu namespace) - \ref cds_urcu_general_instant_gc "gc" - general purpose RCU with immediate reclamation, include file - \ref cds_urcu_general_buffered_gc "gc" - general purpose RCU with deferred (buffered) reclamation, @@ -145,7 +145,7 @@ namespace cds { Any RCU-related container in \p libcds expects that its \p RCU template parameter is one of those wrapper. - @anchor cds_urcu_tags + @anchor cds_urcu_tags For simplicity, in some algorithms instead of using RCU implementation type you should specify corresponding RCU tags (all declared in \p %cds::urcu namespace): - \ref general_instant_tag - for \ref general_instant @@ -154,8 +154,8 @@ namespace cds { - \ref signal_buffered_tag - for \ref signal_buffered - \ref signal_threaded_tag - for \ref signal_threaded - @anchor cds_urcu_performance - Performance + @anchor cds_urcu_performance + Performance As a result of our experiments we can range above %RCU implementation in such order, from high to low performance: @@ -169,8 +169,8 @@ namespace cds { type of payload - mostly read-only (seeking) or read-write (inserting and deleting), - a hardware, your application, and so on. - @anchor cds_urcu_howto - How to use + @anchor cds_urcu_howto + How to use Usually, in your application you use only one \ref cds_urcu_gc "type of RCU" that is the best for your needs. However, the library allows to apply several RCU singleton in one application.