class async_event_impl
Declaration
class async_event_impl { /* full declaration omitted */ };
Description
Abstract base class for async_event
implementations.
Member Function Overview
- async_event_impl()
- async_event_impl(const async_event_impl &)
- async_event_impl(async_event_impl &&)
- get_native_execution_time() → virtual std::optional<std::chrono::nanoseconds>
- get_result() → virtual void *
- is_complete() → virtual bool
- operator=(const async_event_impl &) → async_event_impl &
- operator=(async_event_impl &&) → async_event_impl &
- ~async_event_impl() → virtual
Member Functions
¶async_event_impl()
async_event_impl()
¶async_event_impl(const async_event_impl&)
async_event_impl(const async_event_impl&)
Parameters
- const async_event_impl&
¶async_event_impl(async_event_impl&&)
async_event_impl(async_event_impl&&)
Parameters
¶virtual std::optional<std::chrono::nanoseconds>
get_native_execution_time()
virtual std::optional<std::chrono::nanoseconds>
get_native_execution_time()
Description
Returns the time execution time as measured if profiling was enabled in the issuing component. Requires is_complete()
to be true.
¶virtual void* get_result()
virtual void* get_result()
Description
There is only one instruction type which returns a result, namely alloc_instruction returning a pointer to the allocated memory, i.e. a void*. Having a void* return type on async_event_impl is somewhat leaky, but we don't gain much by wrapping it in a std::any.
¶virtual bool is_complete()
virtual bool is_complete()
Description
If this function returns true once, the implementation must guarantee that it will always do so in the future. The event is expected to be cheap to poll repeatedly, and the operation must proceed in the background even while not being polled.
¶async_event_impl& operator=(
const async_event_impl&)
async_event_impl& operator=(
const async_event_impl&)
Parameters
- const async_event_impl&
¶async_event_impl& operator=(async_event_impl&&)
async_event_impl& operator=(async_event_impl&&)
Parameters
¶virtual ~async_event_impl()
virtual ~async_event_impl()