X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ee6ffc12bf5523e4d2d2193138c791d991ec0ae4..1398fa7c21c0d81f808108e0803d875c6fce9b8e:/src/simix/BoostContext.hpp diff --git a/src/simix/BoostContext.hpp b/src/simix/BoostContext.hpp index 4f64f4152d..032e116e91 100644 --- a/src/simix/BoostContext.hpp +++ b/src/simix/BoostContext.hpp @@ -10,6 +10,7 @@ #ifndef SIMGRID_SIMIX_BOOST_CONTEXT_HPP #define SIMGRID_SIMIX_BOOST_CONTEXT_HPP +#include #include #include @@ -30,12 +31,12 @@ protected: // static static bool parallel_; static xbt_parmap_t parmap_; static std::vector workers_context_; - static unsigned long threads_working_; + static uintptr_t threads_working_; static xbt_os_thread_key_t worker_id_key_; static unsigned long process_index_; static BoostContext* maestro_context_; protected: -#if HAVE_BOOST_CONTEXT == 1 +#if HAVE_BOOST_CONTEXTS == 1 boost::context::fcontext_t* fc_ = nullptr; #else boost::context::fcontext_t fc_; @@ -43,8 +44,7 @@ protected: void* stack_ = nullptr; public: friend BoostContextFactory; - BoostContext(xbt_main_func_t code, - int argc, char **argv, + BoostContext(std::function code, void_pfn_smxprocess_t cleanup_func, smx_process_t process); ~BoostContext(); @@ -61,10 +61,8 @@ public: BoostContextFactory(); virtual ~BoostContextFactory(); - virtual Context* create_context( - xbt_main_func_t, int, char **, void_pfn_smxprocess_t, - smx_process_t process - ) override; + virtual Context* create_context(std::function code, + void_pfn_smxprocess_t, smx_process_t process) override; void run_all() override; };