Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
move ContextFactory::self() into Context::self() and tidy it up
[simgrid.git] / src / include / xbt / parmap.hpp
index f37540b..c589364 100644 (file)
@@ -168,7 +168,7 @@ template <typename T> Parmap<T>::Parmap(unsigned num_workers, e_xbt_parmap_mode_
   unsigned int core_bind = 0;
   for (unsigned i = 1; i < num_workers; i++) {
     ThreadData* data = new ThreadData(*this, i);
-    this->workers[i] = xbt_os_thread_create(nullptr, worker_main, data, nullptr);
+    this->workers[i] = xbt_os_thread_create(worker_main, data);
     xbt_os_thread_bind(this->workers[i], core_bind);
     if (core_bind != std::thread::hardware_concurrency() - 1)
       core_bind++;
@@ -281,7 +281,7 @@ template <typename T> void* Parmap<T>::worker_main(void* arg)
   Parmap<T>& parmap     = data->parmap;
   unsigned round        = 0;
   smx_context_t context = SIMIX_context_new(std::function<void()>(), nullptr, nullptr);
-  SIMIX_context_set_current(context);
+  kernel::context::Context::set_current(context);
 
   XBT_CDEBUG(xbt_parmap, "New worker thread created");