+ ParallelBoostContext(std::function<void()> code, void_pfn_smxprocess_t cleanup_func, smx_actor_t process)
+ : BoostContext(std::move(code), cleanup_func, process)
+ {
+ }
+ void suspend() override;
+ void resume() override;
+
+ static void initialize();
+ static void finalize();
+ static void run_all();
+
+private:
+ static simgrid::xbt::Parmap<smx_actor_t>* parmap_;
+ static std::vector<ParallelBoostContext*> workers_context_;
+ static uintptr_t threads_working_;
+ static xbt_os_thread_key_t worker_id_key_;
+};
+#endif