ActorPtr Actor::create(std::string name, s4u::Host* host, std::function<void()> code)
{
- simgrid::kernel::actor::ActorImpl* actor = simcall_process_create(name, std::move(code), nullptr, host, nullptr);
+ simgrid::kernel::actor::ActorImpl* actor =
+ simcall_process_create(std::move(name), std::move(code), nullptr, host, nullptr);
return actor->iface();
}
ActorPtr Actor::create(std::string name, s4u::Host* host, std::string function, std::vector<std::string> args)
{
simgrid::simix::ActorCodeFactory& factory = SIMIX_get_actor_code_factory(function);
- return create(name, host, factory(std::move(args)));
+ return create(std::move(name), host, factory(std::move(args)));
}
void intrusive_ptr_add_ref(Actor* actor)
void Actor::set_property(std::string key, std::string value)
{
- simgrid::simix::simcall([this, key, value] { pimpl_->set_property(key, value); });
+ simgrid::simix::simcall([this, key, value] { pimpl_->set_property(key, std::move(value)); });
}
Actor* Actor::restart()
exec_init(flops)->set_priority(priority)->start()->wait();
}
-void parallel_execute(std::vector<s4u::Host*> hosts, std::vector<double> flops_amounts,
- std::vector<double> bytes_amounts)
+void parallel_execute(const std::vector<s4u::Host*>& hosts, const std::vector<double>& flops_amounts,
+ const std::vector<double>& bytes_amounts)
{
parallel_execute(hosts, flops_amounts, bytes_amounts, -1);
}
-void parallel_execute(std::vector<s4u::Host*> hosts, std::vector<double> flops_amounts,
- std::vector<double> bytes_amounts, double timeout)
+void parallel_execute(const std::vector<s4u::Host*>& hosts, const std::vector<double>& flops_amounts,
+ const std::vector<double>& bytes_amounts, double timeout)
{
xbt_assert(hosts.size() > 0, "Your parallel executions must span over at least one host.");
xbt_assert(hosts.size() == flops_amounts.size() || flops_amounts.empty(),
}
// deprecated
-void parallel_execute(int host_nb, s4u::Host** host_list, double* flops_amount, double* bytes_amount, double timeout)
+void parallel_execute(int host_nb, s4u::Host* const* host_list, const double* flops_amount, const double* bytes_amount,
+ double timeout)
{
smx_activity_t s =
simcall_execution_parallel_start("", host_nb, host_list, flops_amount, bytes_amount, /* rate */ -1, timeout);
}
// deprecated
-void parallel_execute(int host_nb, sg_host_t* host_list, double* flops_amount, double* bytes_amount)
+void parallel_execute(int host_nb, s4u::Host* const* host_list, const double* flops_amount, const double* bytes_amount)
{
smx_activity_t s = simcall_execution_parallel_start("", host_nb, host_list, flops_amount, bytes_amount,
/* rate */ -1, /*timeout*/ -1);
{
simgrid::s4u::this_actor::yield();
}
+
+void sg_actor_sleep_for(double duration)
+{
+ simgrid::s4u::this_actor::sleep_for(duration);
+}