simgrid::s4u::Host::current()->get_disks().front()->io_init(4000000, simgrid::s4u::Io::OpType::WRITE);
simgrid::s4u::IoPtr carl_read =
simgrid::s4u::Host::by_name("carl")->get_disks().front()->io_init(4000000, simgrid::s4u::Io::OpType::READ);
- simgrid::s4u::ExecPtr carl_compute = simgrid::s4u::Host::by_name("carl")->exec_async(1e9);
+ simgrid::s4u::ExecPtr carl_compute = simgrid::s4u::Host::by_name("carl")->exec_init(1e9);
// Name the activities (for logging purposes only)
bob_compute->set_name("bob compute");
*/
void execute(double flops) const;
/** Start an asynchronous computation on that host (possibly remote) */
+ ExecPtr exec_init(double flops_amounts) const;
ExecPtr exec_async(double flops_amounts) const;
/** Block the calling actor on an execution located on the called host (with explicit priority) */
ExecPtr exec_async(double flops)
{
ExecPtr res = exec_init(flops);
- res->start();
+ res->vetoable_start();
return res;
}
kernel::actor::simcall([this, disk_name] { this->pimpl_->remove_disk(disk_name); });
}
-ExecPtr Host::exec_async(double flops) const
+ExecPtr Host::exec_init(double flops) const
{
return this_actor::exec_init(flops);
}
+ExecPtr Host::exec_async(double flops) const
+{
+ return this_actor::exec_async(flops);
+}
+
void Host::execute(double flops) const
{
execute(flops, 1.0 /* priority */);