Source code repo: http://github.com/khizmax/libcds/
Download: http://sourceforge.net/projects/libcds/files/
-
+
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef CDSSTRESS_INTRUSIVE_STACK_TYPES_H
#include <boost/intrusive/list.hpp>
#include <cds_test/stress_test.h>
+#include <cds_test/stat_flat_combining_out.h>
namespace istack {
T * pop()
{
unique_lock l( m_Lock );
- if ( !m_Impl.empty() ) {
+ if ( !m_Impl.empty()) {
T * v = m_Impl.top();
m_Impl.pop();
return v;
cds::intrusive::treiber_stack::make_traits <
cds::intrusive::opt::hook< base_hook<GC> >
, cds::opt::enable_elimination<true>
- , cds::opt::buffer< cds::opt::v::dynamic_buffer<int> >
+ , cds::opt::buffer< cds::opt::v::initialized_dynamic_buffer<int> >
> ::type
{};
typedef cds::intrusive::TreiberStack< cds::gc::HP, T, traits_Elimination_dyn<cds::gc::HP> > Elimination_HP_dyn;
cds::intrusive::treiber_stack::make_traits <
cds::intrusive::opt::hook< base_hook<GC> >
, cds::opt::enable_elimination<true>
- , cds::opt::buffer< cds::opt::v::dynamic_buffer<int> >
+ , cds::opt::buffer< cds::opt::v::initialized_dynamic_buffer<int> >
, cds::opt::stat<cds::intrusive::treiber_stack::stat<> >
> ::type
{};
<< CDSSTRESS_STAT_OUT( s, m_nPop )
<< CDSSTRESS_STAT_OUT( s, m_nFailedPop )
<< CDSSTRESS_STAT_OUT( s, m_nCollided )
- << CDSSTRESS_STAT_OUT_( "combining_factor", s.combining_factor() )
- << CDSSTRESS_STAT_OUT( s, m_nOperationCount )
- << CDSSTRESS_STAT_OUT( s, m_nCombiningCount )
- << CDSSTRESS_STAT_OUT( s, m_nCompactPublicationList )
- << CDSSTRESS_STAT_OUT( s, m_nDeactivatePubRecord )
- << CDSSTRESS_STAT_OUT( s, m_nActivatePubRecord )
- << CDSSTRESS_STAT_OUT( s, m_nPubRecordCreated )
- << CDSSTRESS_STAT_OUT( s, m_nPubRecordDeteted )
- << CDSSTRESS_STAT_OUT( s, m_nAcquirePubRecCount )
- << CDSSTRESS_STAT_OUT( s, m_nReleasePubRecCount );
+ << static_cast< cds::algo::flat_combining::stat<> const&>( s );
}
} // namespace cds_test