hpx/resiliency/async_replay_executor.hpp#

Defined in header hpx/resiliency/async_replay_executor.hpp.

See Public API for a list of names and headers that are part of the public HPX API.

namespace hpx
namespace resiliency
namespace experimental

Functions

template<typename Executor, typename Pred, typename F, typename ...Ts>
decltype(auto) hpx_invoke(async_replay_validate_t, Executor &&exec, std::size_t n, Pred &&pred, F &&f, Ts&&... ts)#

ADL hook for async_replay_validate CPO with executor.

Asynchronously launches f on exec, validating results with pred. Repeats on error up to n times (aborts on abort_replay_exception).

Parameters
  • tag – CPO tag (async_replay_validate_t).

  • exec – Executor to run f on.

  • n – Maximum number of retry attempts.

  • pred – Predicate validating each invocation result.

  • f – Callable to invoke asynchronously.

  • ts – Arguments forwarded to f.

Returns

future with the first valid result of f.

template<typename Executor, typename F, typename ...Ts>
decltype(auto) hpx_invoke(async_replay_t, Executor &&exec, std::size_t n, F &&f, Ts&&... ts)#

ADL hook for async_replay CPO with executor.

Asynchronously launches f on exec, repeating on error up to n times (aborts on abort_replay_exception).

Parameters
  • tag – CPO tag (async_replay_t).

  • exec – Executor to run f on.

  • n – Maximum number of retry attempts.

  • f – Callable to invoke asynchronously.

  • ts – Arguments forwarded to f.

Returns

future with the first successful result of f.