Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::TBBTaskImplementation::Impl Class Reference
Collaboration diagram for Arcane::TBBTaskImplementation::Impl:

Classes

class  TaskObserver

Public Member Functions

 Impl (Int32 nb_thread)
Int32 nbAllowedThread () const
TaskThreadInfo * threadTaskInfo (Integer index)
void terminate ()
void notifyThreadCreated (bool is_worker)
void notifyThreadDestroyed (bool is_worker)

Public Attributes

tbb::task_arena m_main_arena
std::vector< tbb::task_arena * > m_sub_arena_list
 Array whose i-th element contains the tbb::task_arena for i thread.

Private Member Functions

void _init ()

Private Attributes

Int32 m_nb_allowed_thread = 0
oneapi::tbb::task_scheduler_handle m_task_scheduler_handle = tbb::task_scheduler_handle::get()
TaskObserver m_task_observer
std::mutex m_thread_created_mutex
std::vector< TaskThreadInfo > m_thread_task_infos
tbb::concurrent_set< std::thread::id > m_constructed_thread_map

Detailed Description

Definition at line 496 of file TBBTaskImplementation.cc.

Constructor & Destructor Documentation

◆ Impl() [1/2]

Arcane::TBBTaskImplementation::Impl::Impl ( )
inline

Definition at line 521 of file TBBTaskImplementation.cc.

◆ Impl() [2/2]

Arcane::TBBTaskImplementation::Impl::Impl ( Int32 nb_thread)
inline

Definition at line 528 of file TBBTaskImplementation.cc.

Member Function Documentation

◆ _init()

void Arcane::TBBTaskImplementation::Impl::_init ( )
inlineprivate

Definition at line 620 of file TBBTaskImplementation.cc.

◆ nbAllowedThread()

Int32 Arcane::TBBTaskImplementation::Impl::nbAllowedThread ( ) const
inline

Definition at line 539 of file TBBTaskImplementation.cc.

◆ notifyThreadCreated()

void Arcane::TBBTaskImplementation::Impl::notifyThreadCreated ( bool is_worker)
inline

Definition at line 563 of file TBBTaskImplementation.cc.

◆ notifyThreadDestroyed()

void Arcane::TBBTaskImplementation::Impl::notifyThreadDestroyed ( bool is_worker)
inline

Definition at line 592 of file TBBTaskImplementation.cc.

◆ terminate()

void Arcane::TBBTaskImplementation::Impl::terminate ( )
inline

Definition at line 548 of file TBBTaskImplementation.cc.

◆ threadTaskInfo()

TaskThreadInfo * Arcane::TBBTaskImplementation::Impl::threadTaskInfo ( Integer index)
inline

Definition at line 540 of file TBBTaskImplementation.cc.

Member Data Documentation

◆ m_constructed_thread_map

tbb::concurrent_set<std::thread::id> Arcane::TBBTaskImplementation::Impl::m_constructed_thread_map
private

Definition at line 619 of file TBBTaskImplementation.cc.

◆ m_main_arena

tbb::task_arena Arcane::TBBTaskImplementation::Impl::m_main_arena

Definition at line 610 of file TBBTaskImplementation.cc.

◆ m_nb_allowed_thread

Int32 Arcane::TBBTaskImplementation::Impl::m_nb_allowed_thread = 0
private

Definition at line 544 of file TBBTaskImplementation.cc.

◆ m_sub_arena_list

std::vector<tbb::task_arena*> Arcane::TBBTaskImplementation::Impl::m_sub_arena_list

Array whose i-th element contains the tbb::task_arena for i thread.

Definition at line 612 of file TBBTaskImplementation.cc.

◆ m_task_observer

TaskObserver Arcane::TBBTaskImplementation::Impl::m_task_observer
private

Definition at line 616 of file TBBTaskImplementation.cc.

◆ m_task_scheduler_handle

oneapi::tbb::task_scheduler_handle Arcane::TBBTaskImplementation::Impl::m_task_scheduler_handle = tbb::task_scheduler_handle::get()
private

Definition at line 605 of file TBBTaskImplementation.cc.

◆ m_thread_created_mutex

std::mutex Arcane::TBBTaskImplementation::Impl::m_thread_created_mutex
private

Definition at line 617 of file TBBTaskImplementation.cc.

◆ m_thread_task_infos

std::vector<TaskThreadInfo> Arcane::TBBTaskImplementation::Impl::m_thread_task_infos
private

Definition at line 618 of file TBBTaskImplementation.cc.


The documentation for this class was generated from the following file: