- try {
- MSG_process_kill(process);
- } catch (xbt_ex& ex) {
- XBT_VERB("Process %s just committed a suicide", MSG_process_get_name(process));
- xbt_assert(process == MSG_process_self(),
- "Killing a process should not raise an exception if it's not a suicide. Please report that bug.");
+ if (not simgrid::kernel::context::StopRequest::try_n_catch([&process]() { MSG_process_kill(process); })) {
+ jxbt_throw_by_name(env, "org/simgrid/msg/ProcessKilledError", "Process killed");