hpx/executors/annotating_executor.hpp

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

namespace hpx
namespace execution
namespace experimental

Functions

template<typename Executor>
constexpr auto tag_fallback_invoke(with_annotation_t, Executor &&exec, char const *annotation)
template<typename Executor>
auto tag_fallback_invoke(with_annotation_t, Executor &&exec, std::string annotation)
template<typename BaseExecutor>
struct annotating_executor
#include <annotating_executor.hpp>

A annotating_executor wraps any other executor and adds the capability to add annotations to the launched threads.

Public Functions

template<typename Executor, typename Enable = std::enable_if_t<hpx::traits::is_executor_any_v<Executor> && !std::is_same_v<std::decay_t<Executor>, annotating_executor>>>
constexpr annotating_executor(Executor &&exec, char const *annotation = nullptr)
template<typename Executor, typename Enable = std::enable_if_t<hpx::traits::is_executor_any_v<Executor>>>
annotating_executor(Executor &&exec, std::string annotation)