Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
once.hpp File Reference
#include <boost/thread/detail/config.hpp>
#include <boost/thread/detail/move.hpp>
#include <boost/thread/detail/invoke.hpp>
#include <boost/thread/pthread/pthread_mutex_scoped_lock.hpp>
#include <boost/thread/detail/delete.hpp>
#include <boost/core/no_exceptions_support.hpp>
#include <boost/bind.hpp>
#include <boost/assert.hpp>
#include <boost/config/abi_prefix.hpp>
#include <boost/cstdint.hpp>
#include <pthread.h>
#include <csignal>
#include <boost/config/abi_suffix.hpp>
Include dependency graph for once.hpp:

Classes

struct  boost::once_flag
 

Namespaces

 boost
 Duration formatting facet for input.
 
 boost::thread_detail
 

Macros

#define BOOST_ONCE_INITIAL_FLAG_VALUE   0
 
#define BOOST_THREAD_DETAIL_UINTMAX_ATOMIC_C2(value)   value##u
 
#define BOOST_THREAD_DETAIL_UINTMAX_ATOMIC_MAX_C   BOOST_THREAD_DETAIL_UINTMAX_ATOMIC_C2(~0)
 
#define BOOST_ONCE_INIT   {BOOST_ONCE_INITIAL_FLAG_VALUE}
 
#define BOOST_THREAD_INVOKE_RET_VOID   boost::bind
 
#define BOOST_THREAD_INVOKE_RET_VOID_CALL   ()
 

Typedefs

typedef boost::uint32_t boost::thread_detail::uintmax_atomic_t
 

Functions

BOOST_THREAD_DECL
uintmax_atomic_t & 
boost::thread_detail::get_once_per_thread_epoch ()
 
template<typename Function , class... ArgTypes>
void boost::call_once (once_flag &flag, BOOST_THREAD_RV_REF(Function) f, BOOST_THREAD_RV_REF(ArgTypes)...args)
 

Variables

BOOST_THREAD_DECL uintmax_atomic_t boost::thread_detail::once_global_epoch
 
BOOST_THREAD_DECL pthread_mutex_t boost::thread_detail::once_epoch_mutex
 
BOOST_THREAD_DECL pthread_cond_t boost::thread_detail::once_epoch_cv
 

Macro Definition Documentation

#define BOOST_ONCE_INIT   {BOOST_ONCE_INITIAL_FLAG_VALUE}
#define BOOST_ONCE_INITIAL_FLAG_VALUE   0

Referenced by boost::call_once().

#define BOOST_THREAD_DETAIL_UINTMAX_ATOMIC_C2 (   value)    value##u
#define BOOST_THREAD_DETAIL_UINTMAX_ATOMIC_MAX_C   BOOST_THREAD_DETAIL_UINTMAX_ATOMIC_C2(~0)
#define BOOST_THREAD_INVOKE_RET_VOID   boost::bind

Referenced by boost::call_once().

#define BOOST_THREAD_INVOKE_RET_VOID_CALL   ()

Referenced by boost::call_once().