diff options
Diffstat (limited to '3rdParty/Boost/src/boost/thread/pthread')
-rw-r--r-- | 3rdParty/Boost/src/boost/thread/pthread/shared_mutex.hpp | 2 | ||||
-rw-r--r-- | 3rdParty/Boost/src/boost/thread/pthread/thread_data.hpp | 17 |
2 files changed, 15 insertions, 4 deletions
diff --git a/3rdParty/Boost/src/boost/thread/pthread/shared_mutex.hpp b/3rdParty/Boost/src/boost/thread/pthread/shared_mutex.hpp index 3ce4e23..30440eb 100644 --- a/3rdParty/Boost/src/boost/thread/pthread/shared_mutex.hpp +++ b/3rdParty/Boost/src/boost/thread/pthread/shared_mutex.hpp @@ -10,8 +10,8 @@ #include <boost/assert.hpp> #include <boost/static_assert.hpp> #include <boost/thread/mutex.hpp> -#include <boost/thread/thread.hpp> #include <boost/thread/condition_variable.hpp> +#include <boost/thread/detail/thread_interruption.hpp> #include <boost/config/abi_prefix.hpp> diff --git a/3rdParty/Boost/src/boost/thread/pthread/thread_data.hpp b/3rdParty/Boost/src/boost/thread/pthread/thread_data.hpp index 244035b..730c77c 100644 --- a/3rdParty/Boost/src/boost/thread/pthread/thread_data.hpp +++ b/3rdParty/Boost/src/boost/thread/pthread/thread_data.hpp @@ -13,6 +13,7 @@ #include <boost/optional.hpp> #include <pthread.h> #include "condition_variable_fwd.hpp" +#include <map> #include <boost/config/abi_prefix.hpp> @@ -22,8 +23,18 @@ namespace boost namespace detail { + struct tss_cleanup_function; struct thread_exit_callback_node; - struct tss_data_node; + struct tss_data_node + { + boost::shared_ptr<boost::detail::tss_cleanup_function> func; + void* value; + + tss_data_node(boost::shared_ptr<boost::detail::tss_cleanup_function> func_, + void* value_): + func(func_),value(value_) + {} + }; struct thread_data_base; typedef boost::shared_ptr<thread_data_base> thread_data_ptr; @@ -41,14 +52,14 @@ namespace boost bool join_started; bool joined; boost::detail::thread_exit_callback_node* thread_exit_callbacks; - boost::detail::tss_data_node* tss_data; + std::map<void const*,boost::detail::tss_data_node> tss_data; bool interrupt_enabled; bool interrupt_requested; pthread_cond_t* current_cond; thread_data_base(): done(false),join_started(false),joined(false), - thread_exit_callbacks(0),tss_data(0), + thread_exit_callbacks(0), interrupt_enabled(true), interrupt_requested(false), current_cond(0) |