Skip to main content

struct thread_queue::job

Declaration

struct thread_queue::job { /* full declaration omitted */ };

Member Variables

std::function<void*()> fn
std::promise<completion> promise

Member Function Overview

  • job()
  • template <typename Fn, std::enable_if_t<std::is_void_v<std::invoke_result_t<std::decay_t<Fn>>>, int> = 0>
    job(Fn && fn)
  • template <typename Fn, std::enable_if_t<std::is_convertible_v<std::invoke_result_t<std::decay_t<Fn>>, void *>, int> = 0>
    job(Fn && fn)

Member Functions

job()


template <typename Fn,
          std::enable_if_t<
              std::is_void_v<std::invoke_result_t<
                  std::decay_t<Fn>>>,
              int> = 0>
job(Fn&& fn)

Description

Constructor overload for fn returning void.

Template Parameters

Fn
std::enable_if_t<std::is_void_v<std::invoke_result_t<std::decay_t<Fn>>>, int> = 0

Parameters

Fn&& fn

template <
    typename Fn,
    std::enable_if_t<std::is_convertible_v<
                         std::invoke_result_t<
                             std::decay_t<Fn>>,
                         void*>,
                     int> = 0>
job(Fn&& fn)

Description

Constructor overload for fn returning void*.

Template Parameters

Fn
std::enable_if_t<std::is_convertible_v<std::invoke_result_t<std::decay_t<Fn>>, void *>, int> = 0

Parameters

Fn&& fn