134 void WaitUntil(
const std::chrono::time_point<Clock, Duration>&)
const noexcept(
false);
176 explicit TaskBase(
impl::TaskContextHolder&& context);
187 impl::TaskContext& GetContext()
const noexcept;
190 bool HasSameContext(
const TaskBase& other)
const noexcept;
193 utils::impl::WrappedCallBase& GetPayload()
const noexcept;
196 void Invalidate()
noexcept;
202 friend class impl::TaskContextAccessor;
205 utils::FastPimpl<Impl, 8, 8> pimpl_;
208template <
typename Rep,
typename Period>
209void TaskBase::
WaitFor(
const std::chrono::duration<Rep, Period>& duration)
const noexcept(
false) {
210 WaitUntil(Deadline::FromDuration(duration));
213template <
typename Clock,
typename Duration>
214void TaskBase::
WaitUntil(
const std::chrono::time_point<Clock, Duration>& until)
const noexcept(
false) {
215 WaitUntil(Deadline::FromTimePoint(until));