40 template<
bool IsProfilerEnabled = false>
68 std::atomic<
ice::
u8> _refcount = 1;
74 _refcount.fetch_add(1, std::memory_order_relaxed);
81 if (_refcount.fetch_sub(1, std::memory_order_relaxed) == 0)
#define ICE_ASSERT_CORE(expression)
Definition assert_core.hxx:43
SPDX-License-Identifier: MIT.
Definition array.hxx:12
TaskState
All states a task can be in.
Definition task_info.hxx:13
@ Canceled
Task was canceled at any point of it's lifetime.
Definition task_info.hxx:32
@ Created
Task exists, but execution did not start.
Definition task_info.hxx:20
@ Running
Task, or one of it's subtasks are executing.
Definition task_info.hxx:23
@ Succeeded
Task finished execution with a valid result.
Definition task_info.hxx:29
@ Suspended
Task is suspended and awaits resuming. (Unused).
Definition task_info.hxx:26
@ Failed
Task finished execution but results are invalid.
Definition task_info.hxx:35
@ None
Definition log_severity.hxx:21
@ All
Definition log_severity.hxx:22
constexpr bool has_any(T value, T expected_flags) noexcept
Definition enum_flags.hxx:83
@ Invalid
Definition log_sink.hxx:22
std::uint8_t u8
Definition types.hxx:24
bool has_any(ice::TaskState state) const noexcept
Definition task_info.hxx:87
static constexpr bool HasProfilingInfo
Definition task_info.hxx:51
TaskInfo() noexcept=default
void release() noexcept
Definition task_info.hxx:78
std::atomic< ice::TaskState > state
Definition task_info.hxx:65
ice::TaskProfilingInfo< false > profiling
Definition task_info.hxx:64
auto aquire() noexcept -> ice::TaskInfo *
Definition task_info.hxx:71
char const * fiber_name
Definition task_info.hxx:46
Definition task_info.hxx:41