libjmmcg  release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
shared_ptr_parallel.cpp File Reference
#include "stdafx.h"
#include <boost/test/included/unit_test.hpp>
#include <boost/mpl/list.hpp>
#include <boost/shared_ptr.hpp>
#include <boost/smart_ptr/atomic_shared_ptr.hpp>
#include "core/ave_deviation_meter.hpp"
#include "core/shared_ptr.hpp"
#include "core/stats_output.hpp"
#include "core/thread_wrapper.hpp"
#include <chrono>
Include dependency graph for shared_ptr_parallel.cpp:

Go to the source code of this file.

Classes

struct  obj< Mdl >
 
struct  boost_atomic_sp_compat< V >
 
struct  make_shared< PtrT >
 
struct  make_shared< boost::shared_ptr< V > >
 
struct  make_shared< boost_atomic_sp_compat< V > >
 
struct  make_shared< std::shared_ptr< V > >
 
struct  copier< PtrT >
 
struct  copier< boost::shared_ptr< V > >
 
struct  copier< boost_atomic_sp_compat< V > >
 
struct  copier< std::shared_ptr< V > >
 
struct  cctor_thread< Element >
 
struct  cctor_thread< Element >::make
 
struct  resettor< PtrT >
 
struct  resettor< boost::shared_ptr< V > >
 
struct  resettor< boost_atomic_sp_compat< V > >
 
struct  resettor< std::shared_ptr< V > >
 
struct  dtor_thread< Element >
 
struct  dtor_thread< Element >::make
 

Macros

#define BOOST_TEST_MODULE   libjmmcg_tests
 

Typedefs

typedef boost::mpl::list< boost::shared_ptr< obj< api_lock_traits< platform_api, heavyweight_threading >::atomic_counter_type > >, boost_atomic_sp_compat< obj< api_lock_traits< platform_api, heavyweight_threading >::atomic_counter_type > >, std::shared_ptr< obj< api_lock_traits< platform_api, heavyweight_threading >::atomic_counter_type > >, shared_ptr< obj< api_lock_traits< platform_api, sequential_mode >::atomic_counter_type >, api_lock_traits< platform_api, sequential_mode > >, shared_ptr< obj< api_lock_traits< platform_api, sequential_mode >::atomic_counter_type >, api_lock_traits< platform_api, heavyweight_threading > >, shared_ptr< obj< api_lock_traits< platform_api, heavyweight_threading >::atomic_counter_type >, api_lock_traits< platform_api, sequential_mode > >, shared_ptr< obj< api_lock_traits< platform_api, heavyweight_threading >::atomic_counter_type >, api_lock_traits< platform_api, heavyweight_threading > >> ctr_types
 
using timed_results_t = ave_deviation_meter< unsigned long long >
 

Functions

 BOOST_AUTO_TEST_CASE_TEMPLATE (parallel_cctor, ctr_t, ctr_types)
 
 BOOST_AUTO_TEST_CASE_TEMPLATE (parallel_deletes, ctr_t, ctr_types)
 

Macro Definition Documentation

◆ BOOST_TEST_MODULE

#define BOOST_TEST_MODULE   libjmmcg_tests

Definition at line 21 of file shared_ptr_parallel.cpp.

Typedef Documentation

◆ ctr_types

typedef boost::mpl::list< boost::shared_ptr<obj<api_lock_traits<platform_api, heavyweight_threading>::atomic_counter_type> >, boost_atomic_sp_compat<obj<api_lock_traits<platform_api, heavyweight_threading>::atomic_counter_type> >, std::shared_ptr<obj<api_lock_traits<platform_api, heavyweight_threading>::atomic_counter_type> >, shared_ptr<obj<api_lock_traits<platform_api, sequential_mode>::atomic_counter_type>, api_lock_traits<platform_api, sequential_mode> >, shared_ptr<obj<api_lock_traits<platform_api, sequential_mode>::atomic_counter_type>, api_lock_traits<platform_api, heavyweight_threading> >, shared_ptr<obj<api_lock_traits<platform_api, heavyweight_threading>::atomic_counter_type>, api_lock_traits<platform_api, sequential_mode> >, shared_ptr<obj<api_lock_traits<platform_api, heavyweight_threading>::atomic_counter_type>, api_lock_traits<platform_api, heavyweight_threading> >> ctr_types

Definition at line 70 of file shared_ptr_parallel.cpp.

◆ timed_results_t

using timed_results_t = ave_deviation_meter<unsigned long long>

Definition at line 71 of file shared_ptr_parallel.cpp.

Function Documentation

◆ BOOST_AUTO_TEST_CASE_TEMPLATE() [1/2]

BOOST_AUTO_TEST_CASE_TEMPLATE ( parallel_cctor  ,
ctr_t  ,
ctr_types   
)

\xrefitem test 8. \xrefitem test 159.

Definition at line 287 of file shared_ptr_parallel.cpp.

◆ BOOST_AUTO_TEST_CASE_TEMPLATE() [2/2]

BOOST_AUTO_TEST_CASE_TEMPLATE ( parallel_deletes  ,
ctr_t  ,
ctr_types   
)

\xrefitem test 9. \xrefitem test 160.

Definition at line 344 of file shared_ptr_parallel.cpp.