static simgrid::xbt::random::XbtRandom prng;
return prng.uniform_int(min, max);
}
- auto observer = new simgrid::mc::RandomSimcall(SIMIX_process_self(), min, max);
- return simgrid::kernel::actor::simcall([observer] { return observer->get_value(); }, observer);
+ simgrid::mc::RandomSimcall observer{SIMIX_process_self(), min, max};
+ return simgrid::kernel::actor::simcall([&observer] { return observer.get_value(); }, &observer);
}
namespace simgrid {
{
simgrid::kernel::actor::ActorImpl::self()->simcall_.inspector_ = t;
simcall_BODY_run_kernel(&code);
+ simgrid::kernel::actor::ActorImpl::self()->simcall_.inspector_ = nullptr;
}
void simcall_run_blocking(std::function<void()> const& code, simgrid::mc::SimcallInspector* t = nullptr)
{
simgrid::kernel::actor::ActorImpl::self()->simcall_.inspector_ = t;
simcall_BODY_run_blocking(&code);
+ simgrid::kernel::actor::ActorImpl::self()->simcall_.inspector_ = nullptr;
}
int simcall_mc_random(int min, int max) // XBT_ATTRIB_DEPRECATD_v331