3 #include "set/hdr_intrusive_striped_set.h"
4 #include <cds/intrusive/striped_set/boost_splay_set.h>
5 #include <cds/intrusive/striped_set.h>
6 #include <boost/version.hpp>
9 namespace bi = boost::intrusive;
12 # if BOOST_VERSION < 105600
13 typedef bi::splay_set_member_hook<> splay_set_member_hook;
14 typedef bi::splay_set_base_hook<> splay_set_base_hook;
16 typedef bi::bs_set_base_hook<> splay_set_base_hook;
17 typedef bi::bs_set_member_hook<> splay_set_member_hook;
20 typedef IntrusiveStripedSetHdrTest::base_item< splay_set_base_hook> base_item_type;
21 typedef IntrusiveStripedSetHdrTest::member_item< splay_set_member_hook > member_item_type;
24 void IntrusiveStripedSetHdrTest::Striped_splay_set_basehook()
26 typedef ci::StripedSet<
27 bi::splay_set<base_item_type, bi::compare<IntrusiveStripedSetHdrTest::less<base_item_type> > >
28 ,co::hash< IntrusiveStripedSetHdrTest::hash_int >
29 ,co::mutex_policy< ci::striped_set::striping<> >
35 void IntrusiveStripedSetHdrTest::Striped_splay_set_basehook_bucket_threshold()
37 typedef ci::StripedSet<
38 bi::splay_set<base_item_type, bi::compare<IntrusiveStripedSetHdrTest::less<base_item_type> > >
39 ,co::hash< IntrusiveStripedSetHdrTest::hash_int >
40 ,co::resizing_policy< ci::striped_set::single_bucket_size_threshold<64> >
46 void IntrusiveStripedSetHdrTest::Striped_splay_set_basehook_bucket_threshold_rt()
48 typedef ci::StripedSet<
49 bi::splay_set<base_item_type, bi::compare<IntrusiveStripedSetHdrTest::less<base_item_type> > >
50 ,co::hash< IntrusiveStripedSetHdrTest::hash_int >
51 ,co::resizing_policy< ci::striped_set::single_bucket_size_threshold<0> >
54 set_type s( 64, ci::striped_set::single_bucket_size_threshold<0>(256) );
58 void IntrusiveStripedSetHdrTest::Striped_splay_set_memberhook()
60 typedef ci::StripedSet<
63 , bi::member_hook< member_item_type, splay_set_member_hook, &member_item_type::hMember>
64 , bi::compare<IntrusiveStripedSetHdrTest::less<member_item_type> >
66 ,co::hash< IntrusiveStripedSetHdrTest::hash_int >
72 void IntrusiveStripedSetHdrTest::Striped_splay_set_memberhook_bucket_threshold()
74 typedef ci::StripedSet<
77 , bi::member_hook< member_item_type, splay_set_member_hook, &member_item_type::hMember>
78 , bi::compare<IntrusiveStripedSetHdrTest::less<member_item_type> >
80 ,co::hash< IntrusiveStripedSetHdrTest::hash_int >
81 ,co::resizing_policy< ci::striped_set::single_bucket_size_threshold<256> >
87 void IntrusiveStripedSetHdrTest::Striped_splay_set_memberhook_bucket_threshold_rt()
89 typedef ci::StripedSet<
92 , bi::member_hook< member_item_type, splay_set_member_hook, &member_item_type::hMember>
93 , bi::compare<IntrusiveStripedSetHdrTest::less<member_item_type> >
95 ,co::hash< IntrusiveStripedSetHdrTest::hash_int >
96 ,co::resizing_policy< ci::striped_set::single_bucket_size_threshold<0> >
99 set_type s( 64, ci::striped_set::single_bucket_size_threshold<0>(256) );