THROW_UNIMPLEMENTED;
}
+int Exec::wait_any_for(std::vector<ExecPtr>* execs, double timeout)
+{
+ std::unique_ptr<kernel::activity::ExecImpl* []> rexecs(new kernel::activity::ExecImpl*[execs->size()]);
+ std::transform(begin(*execs), end(*execs), rexecs.get(),
+ [](const ExecPtr& exec) { return static_cast<kernel::activity::ExecImpl*>(exec->pimpl_.get()); });
+ return simcall_execution_waitany_for(rexecs.get(), execs->size(), timeout);
+}
+
Exec* Exec::cancel()
{
simix::simcall([this] { boost::static_pointer_cast<kernel::activity::ExecImpl>(pimpl_)->cancel(); });
(*boost::static_pointer_cast<kernel::activity::ExecImpl>(pimpl_))
.set_name(name_)
.set_tracing_category(tracing_category_)
- .set_priority(1. / priority_)
+ .set_sharing_penalty(1. / priority_)
.set_bound(bound_)
.set_flops_amount(flops_amount_)
.start();
[this]() { return boost::static_pointer_cast<simgrid::kernel::activity::ExecImpl>(pimpl_)->get_remaining(); });
}
-/** @brief Returns the ratio of elements that are still to do
+/** @brief Returns the ratio of elements that are still to do
*
* The returned value is between 0 (completely done) and 1 (nothing done yet).
*/