#include <functional>
#include <memory>
#include <unordered_map>
+#include <vector>
#include <xbt/functional.hpp>
-
#include "src/internal_config.h"
#include "simgrid/simix.h"
#include "surf/surf.h"
/** Callback used when killing a SMX_process */
void_pfn_smxprocess_t cleanup_process_function = nullptr;
xbt_os_mutex_t mutex = nullptr;
+
+ std::vector<simgrid::xbt::Task<void()>> tasks;
+ std::vector<simgrid::xbt::Task<void()>> tasksTemp;
};
}
#define SMX_EXCEPTION(issuer, cat, val, msg) \
if (1) { \
smx_process_t _smx_throw_issuer = (issuer); /* evaluate only once */ \
- xbt_ex e(msg); \
+ xbt_ex e(XBT_THROW_POINT, msg); \
e.category = cat; \
e.value = val; \
- e.file = __FILE__; \
- e.line = __LINE__; \
- e.func = __func__; \
_smx_throw_issuer->exception = std::make_exception_ptr(e); \
} else ((void)0)
// FIXME, Dirty hack for SMPI+MSG
XBT_PRIVATE void SIMIX_process_set_cleanup_function(smx_process_t process, void_pfn_smxprocess_t cleanup);
-XBT_PRIVATE simgrid::simix::ActorCodeFactory& SIMIX_get_actor_code_factory(const char *name);
-
SG_END_DECL()
+XBT_PRIVATE simgrid::simix::ActorCodeFactory& SIMIX_get_actor_code_factory(const char *name);
+
#endif