// Forcefully kill the actor if its host is turned off. Not a HostFailureException because you should not survive that
if (not host_->is_on())
- this->throw_exception(std::make_exception_ptr(simgrid::kernel::context::StopRequest("host failed")));
+ this->throw_exception(std::make_exception_ptr(ForcefulKillException("host failed")));
/* destroy the blocking synchro if any */
if (waiting_synchro != nullptr) {
if (context_->iwannadie) {
XBT_DEBUG("Actor %s@%s is dead", get_cname(), host_->get_cname());
- // throw simgrid::kernel::context::StopRequest(); Does not seem to properly kill the actor
+ // throw simgrid::kernel::context::ForcefulKillException(); Does not seem to properly kill the actor
context_->stop();
THROW_IMPOSSIBLE;
}
if (suspended_) {
XBT_DEBUG("Hey! I'm suspended.");
- xbt_assert(exception_ != nullptr, "Gasp! This exception may be lost by subsequent calls.");
+
+ xbt_assert(exception_ == nullptr, "Gasp! This exception may be lost by subsequent calls.");
suspended_ = false;
suspend(this);
}
SIMIX_process_on_exit(actor, [fun](int a, void* b) { fun((void*)(intptr_t)a, b); }, data);
}
-void SIMIX_process_on_exit(smx_actor_t actor, std::function<void(int, void*)> fun, void* data)
+void SIMIX_process_on_exit(smx_actor_t actor, std::function<void(bool, void*)> fun, void* data)
{
xbt_assert(actor, "current process not found: are you in maestro context ?");