14#include <kcenon/common/resilience/circuit_breaker.h>
21 using common::resilience::circuit_breaker;
55 std::unique_ptr<job> inner,
56 std::shared_ptr<circuit_breaker> cb);
73 auto do_work() -> common::VoidResult
override;
83 std::shared_ptr<circuit_breaker>
cb_;
Represents a unit of work (task) to be executed, typically by a job queue.
A job wrapper that integrates circuit breaker protection.
std::shared_ptr< circuit_breaker > cb_
~protected_job() override
Destructor.
auto do_work() -> common::VoidResult override
Executes the wrapped job with circuit breaker protection.
auto get_name() const -> std::string
Gets the name of this job.
protected_job(std::unique_ptr< job > inner, std::shared_ptr< circuit_breaker > cb)
Constructs a protected job wrapper.
std::unique_ptr< job > inner_
Base job class for schedulable work units in the thread system.
Core threading foundation of the thread system library.