3 #include "set/hdr_intrusive_striped_set.h"
4 #include <cds/intrusive/striped_set/boost_avl_set.h>
5 #include <cds/intrusive/striped_set.h>
8 namespace bi = boost::intrusive;
11 typedef IntrusiveStripedSetHdrTest::base_item< bi::avl_set_base_hook<> > base_item_type;
12 typedef IntrusiveStripedSetHdrTest::member_item< bi::avl_set_member_hook<> > member_item_type;
15 void IntrusiveStripedSetHdrTest::Refinable_avl_set_basehook()
17 typedef ci::StripedSet<
18 bi::avl_set<base_item_type, bi::compare<IntrusiveStripedSetHdrTest::less<base_item_type> > >
19 ,co::mutex_policy< ci::striped_set::refinable<> >
20 ,co::hash< IntrusiveStripedSetHdrTest::hash_int >
21 ,co::back_off< cds::backoff::empty >
27 void IntrusiveStripedSetHdrTest::Refinable_avl_set_basehook_bucket_threshold()
29 typedef ci::StripedSet<
30 bi::avl_set<base_item_type, bi::compare<IntrusiveStripedSetHdrTest::less<base_item_type> > >
31 ,co::hash< IntrusiveStripedSetHdrTest::hash_int >
32 ,co::resizing_policy< ci::striped_set::single_bucket_size_threshold<64> >
33 ,co::mutex_policy< ci::striped_set::refinable<> >
39 void IntrusiveStripedSetHdrTest::Refinable_avl_set_basehook_bucket_threshold_rt()
41 typedef ci::StripedSet<
42 bi::avl_set<base_item_type, bi::compare<IntrusiveStripedSetHdrTest::less<base_item_type> > >
43 ,co::hash< IntrusiveStripedSetHdrTest::hash_int >
44 ,co::resizing_policy< ci::striped_set::single_bucket_size_threshold<0> >
45 ,co::mutex_policy< ci::striped_set::refinable<> >
48 set_type s( 64, ci::striped_set::single_bucket_size_threshold<0>(256) );
52 void IntrusiveStripedSetHdrTest::Refinable_avl_set_memberhook()
54 typedef ci::StripedSet<
57 , bi::member_hook< member_item_type, bi::avl_set_member_hook<>, &member_item_type::hMember>
58 , bi::compare<IntrusiveStripedSetHdrTest::less<member_item_type> >
60 ,co::mutex_policy< ci::striped_set::refinable<> >
61 ,co::hash< IntrusiveStripedSetHdrTest::hash_int >
67 void IntrusiveStripedSetHdrTest::Refinable_avl_set_memberhook_bucket_threshold()
69 typedef ci::StripedSet<
72 , bi::member_hook< member_item_type, bi::avl_set_member_hook<>, &member_item_type::hMember>
73 , bi::compare<IntrusiveStripedSetHdrTest::less<member_item_type> >
75 ,co::mutex_policy< ci::striped_set::refinable<> >
76 ,co::hash< IntrusiveStripedSetHdrTest::hash_int >
77 ,co::resizing_policy< ci::striped_set::single_bucket_size_threshold<256> >
83 void IntrusiveStripedSetHdrTest::Refinable_avl_set_memberhook_bucket_threshold_rt()
85 typedef ci::StripedSet<
88 , bi::member_hook< member_item_type, bi::avl_set_member_hook<>, &member_item_type::hMember>
89 , bi::compare<IntrusiveStripedSetHdrTest::less<member_item_type> >
91 ,co::hash< IntrusiveStripedSetHdrTest::hash_int >
92 ,co::mutex_policy< ci::striped_set::refinable<> >
93 ,co::resizing_policy< ci::striped_set::single_bucket_size_threshold<0> >
96 set_type s( 64, ci::striped_set::single_bucket_size_threshold<0>(256) );