47 Call(
const std::shared_ptr<executors::IExecutor>& executor,
48 std::chrono::steady_clock::time_point deadline)
59 template <
typename OnTimeout>
60 void set_timeout(std::chrono::steady_clock::time_point deadline,
61 OnTimeout&& on_timeout) {
63 deadline, std::forward<OnTimeout>(on_timeout));
71 [[nodiscard]] std::shared_ptr<CallFutureImpl>
future() const noexcept {
Definition of CallFutureImpl class.
Definition of CallPromise class.
Definition of CallResult class.
Class to set results of RPCs.
void set_timeout(std::chrono::steady_clock::time_point deadline, OnTimeout &&on_timeout)
Set timeout.
std::shared_ptr< CallFutureImpl > future() const noexcept
Get the future object to set and get the result of this RPC.
CallPromise promise_
Object to set the result of this RPC.
Call(const std::shared_ptr< executors::IExecutor > &executor, std::chrono::steady_clock::time_point deadline)
Constructor.
void set(const messages::CallResult &result)
Set the result.
void set(const Status &error)
Set an error.
executors::Timer timeout_timer_
Timer of timeout.
Class of timers to call functions later.
Class of results of methods.
Definition of IExecutor class.
Namespace of internal implementations.
Namespace of executors to process asynchronous tasks.
Definition of OperationType enumeration.
Definition of Status class.
Definition of Timer class.