libjmmcg  release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
thread_api_traits.hpp File Reference
#include "locking.hpp"
#include "atomic_counter.hpp"
#include <array>
#include <limits>
#include <mutex>
#include "thread_api_traits_impl.hpp"
#include "hp_timer.hpp"
Include dependency graph for thread_api_traits.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::api_lock_traits< platform_api, sequential_mode >
 The various lock-types for sequential use, with no threading. More...
 
struct  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::api_lock_traits< platform_api, sequential_mode >::scoped_lock
 
struct  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::api_lock_traits< generic_traits::api_type::no_api, sequential_mode >
 
struct  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::critical_section
 
struct  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::atomic_ctr< V >
 
class  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::anon_event
 
struct  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::api_threading_traits< API, Mdl >
 
struct  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::api_threading_traits< API, Mdl >::cancellability
 

Namespaces

namespace  jmmcg
 Link with -lrt to include these functions.
 
namespace  jmmcg::LIBJMMCG_VER_NAMESPACE
 
namespace  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd
 Parallel Pixie Dust or PPD is the name of the thread library within libjmmcg.
 
namespace  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking
 

Typedefs

typedef api_lock_traits< platform_api, sequential_mode > jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::lock_traits
 

Enumerations

enum  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::atomic_state_type {
  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::atom_set =0 , jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::atom_abandoned , jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::atom_already_set , jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::atom_max_recurse ,
  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::atom_deadlocked , jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::atom_perm_error , jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::atom_failed , jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::atom_interrupted ,
  jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::atom_unset , jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::no_locking::atom_errno
}