24 m_arena(std::make_shared<oneapi::tbb::task_arena>(oneapi::tbb::task_arena::attach())) {
29 : m_task(iTask.release_no_decrement()),
30 m_group(iTask.
group()),
31 m_arena(std::make_shared<oneapi::tbb::task_arena>(oneapi::tbb::task_arena::attach())) {}
40 : m_task(iHolder.m_task), m_group(iHolder.m_group), m_arena(iHolder.m_arena) {
47 : m_task(iOther.m_task), m_group(iOther.m_group), m_arena(std::
move(iOther.m_arena)) {
48 iOther.m_task =
nullptr;
81 if (0 == task->decrement_ref_count()) {
oneapi::tbb::task_group * m_group
WaitingTaskWithArenaHolder & operator=(const WaitingTaskWithArenaHolder &iRHS)
bool taskHasFailed() const noexcept
std::shared_ptr< oneapi::tbb::task_arena > m_arena
~WaitingTaskWithArenaHolder()
void dependentTaskFailed(std::exception_ptr iPtr)
Called if waited for task failed.
bool hasTask() const noexcept
void doneWaiting(std::exception_ptr iExcept)
void swap(edm::DataFrameContainer &lhs, edm::DataFrameContainer &rhs)
WaitingTaskWithArenaHolder()
oneapi::tbb::task_group * group() const
WaitingTaskHolder makeWaitingTaskHolderAndRelease()
unsigned int decrement_ref_count()
std::exception_ptr const * exceptionPtr() const
Returns exception thrown by dependent task.
void increment_ref_count()