37 : id_(
other.id_), cancellation_(std::move(
other.cancellation_))
48 cancellation_ = std::move(
other.cancellation_);
58 cancellation_->user_cancelled.store(
true, std::memory_order_release);
64 return !cancellation_ || cancellation_->user_cancelled.load(std::memory_order_acquire)
65 || cancellation_->pool_stopped.load(std::memory_order_acquire);
69 id() const noexcept -> uint64_t
76 std::shared_ptr<detail::scheduled_cancellation_state> cancellation_;
Thread pool augmented with delayed and periodic task scheduling.
Copyable handle for a cancellable scheduled task.
scheduled_task_backend(scheduled_task_backend &&other) noexcept
auto operator=(scheduled_task_backend const &) -> scheduled_task_backend &=default
scheduled_task_backend(uint64_t id)
scheduled_task_backend(scheduled_task_backend const &)=default
auto id() const noexcept -> uint64_t
auto operator=(scheduled_task_backend &&other) noexcept -> scheduled_task_backend &
auto is_cancelled() const noexcept -> bool
Aggregates multiple thread_registry_backend instances into a single queryable view.
@ other
Standard round-robin time-sharing.
Shared cancellation flags for scheduled task handles.