#include <boost/thread/mutex.hpp>
#include <boost/thread/condition.hpp>
#include <boost/thread/thread.hpp>
+#include <boost/config.hpp>
#ifndef DEFAULT_EXECUTION_MONITOR_TYPE
# define DEFAULT_EXECUTION_MONITOR_TYPE execution_monitor::use_condition
public:
indirect_adapter(F func, execution_monitor& monitor)
: func(func), monitor(monitor) { }
+#if !defined(BOOST_NO_CXX11_DEFAULTED_FUNCTIONS)
+ indirect_adapter(indirect_adapter const&) = default;
+#endif
+
void operator()() const
{
try
public:
thread_member_binder(R (T::*func)(), T& param)
: func(func), param(param) { }
+#if !defined(BOOST_NO_CXX11_DEFAULTED_FUNCTIONS)
+ thread_member_binder(thread_member_binder const&) = default;
+#endif
+
void operator()() const { (param.*func)(); }
private:
void operator=(thread_member_binder&);
-
+
R (T::*func)();
T& param;
};