Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Various docs update
[simgrid.git] / src / include / xbt / parmap.hpp
index 839d029..18bf58d 100644 (file)
@@ -171,7 +171,8 @@ template <typename T> Parmap<T>::Parmap(unsigned num_workers, e_xbt_parmap_mode_
   XBT_ATTRIB_UNUSED unsigned int core_bind = 0;
 
   for (unsigned i = 1; i < num_workers; i++) {
-    this->workers[i] = new std::thread(worker_main, new ThreadData(*this, i));
+    ThreadData* data = new ThreadData(*this, i);
+    this->workers[i] = new std::thread(worker_main, data);
 
     /* Bind the worker to a core if possible */
 #if HAVE_PTHREAD_SETAFFINITY
@@ -294,7 +295,7 @@ template <typename T> void Parmap<T>::worker_main(ThreadData* data)
 {
   Parmap<T>& parmap     = data->parmap;
   unsigned round        = 0;
-  smx_context_t context = simix_global->context_factory->create_context(std::function<void()>(), nullptr);
+  kernel::context::Context* context = simix_global->context_factory->create_context(std::function<void()>(), nullptr);
   kernel::context::Context::set_current(context);
 
   XBT_CDEBUG(xbt_parmap, "New worker thread created");