Arcane  4.1.11.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::TBBThreadImplementation

Implémentation des threads utilisant TBB (Intel Threads Building Blocks). Plus de détails...

Graphe d'héritage de Arcane::TBBThreadImplementation:
Graphe de collaboration de Arcane::TBBThreadImplementation:

Classes

class  StartFunc

Fonctions membres publiques

void build ()
void initialize () override
ThreadImpl * createThread (IFunctor *f) override
void joinThread (ThreadImpl *t) override
void destroyThread (ThreadImpl *t) override
void createSpinLock (Int64 *spin_lock_addr) override
void lockSpinLock (Int64 *spin_lock_addr, Int64 *scoped_spin_lock_addr) override
void unlockSpinLock (Int64 *spin_lock_addr, Int64 *scoped_spin_lock_addr) override
MutexImpl * createMutex () override
void destroyMutex (MutexImpl *mutex) override
void lockMutex (MutexImpl *mutex) override
void unlockMutex (MutexImpl *mutex) override
Int64 currentThread () override
IThreadBarriercreateBarrier () override
Fonctions membres publiques hérités de Arcane::IThreadImplementation
virtual bool isMultiThread () const
 Vrai si l'implémentation supporte plusieurs threads.
Fonctions membres publiques hérités de Arcane::ReferenceCounterImpl
void addReference ()
void removeReference ()
void _internalAddReference ()
bool _internalRemoveReference ()

Fonctions membres privées

 ARCCORE_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS ()
void addReference () override
void removeReference () override

Attributs privés

bool m_use_tbb_barrier = false
MutexImpl * m_global_mutex_impl = nullptr
Ref< IThreadImplementationm_std_thread_implementation

Description détaillée

Implémentation des threads utilisant TBB (Intel Threads Building Blocks).

Définition à la ligne 134 du fichier TBBThreadImplementation.cc.

Documentation des constructeurs et destructeur

◆ TBBThreadImplementation()

Arcane::TBBThreadImplementation::TBBThreadImplementation ( )
inline

Définition à la ligne 158 du fichier TBBThreadImplementation.cc.

◆ ~TBBThreadImplementation()

Arcane::TBBThreadImplementation::~TBBThreadImplementation ( )
inlineoverride

Définition à la ligne 165 du fichier TBBThreadImplementation.cc.

Documentation des fonctions membres

◆ addReference()

void Arcane::TBBThreadImplementation::addReference ( )
inlineoverrideprivatevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 140 du fichier TBBThreadImplementation.cc.

◆ build()

void Arcane::TBBThreadImplementation::build ( )
inline

Définition à la ligne 175 du fichier TBBThreadImplementation.cc.

◆ createBarrier()

IThreadBarrier * Arcane::TBBThreadImplementation::createBarrier ( )
inlineoverridevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 248 du fichier TBBThreadImplementation.cc.

◆ createMutex()

MutexImpl * Arcane::TBBThreadImplementation::createMutex ( )
inlineoverridevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 221 du fichier TBBThreadImplementation.cc.

◆ createSpinLock()

void Arcane::TBBThreadImplementation::createSpinLock ( Int64 * spin_lock_addr)
inlineoverridevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 202 du fichier TBBThreadImplementation.cc.

◆ createThread()

ThreadImpl * Arcane::TBBThreadImplementation::createThread ( IFunctor * f)
inlineoverridevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 187 du fichier TBBThreadImplementation.cc.

◆ currentThread()

Int64 Arcane::TBBThreadImplementation::currentThread ( )
inlineoverridevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 242 du fichier TBBThreadImplementation.cc.

◆ destroyMutex()

void Arcane::TBBThreadImplementation::destroyMutex ( MutexImpl * mutex)
inlineoverridevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 226 du fichier TBBThreadImplementation.cc.

◆ destroyThread()

void Arcane::TBBThreadImplementation::destroyThread ( ThreadImpl * t)
inlineoverridevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 196 du fichier TBBThreadImplementation.cc.

◆ initialize()

void Arcane::TBBThreadImplementation::initialize ( )
inlineoverridevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 179 du fichier TBBThreadImplementation.cc.

◆ joinThread()

void Arcane::TBBThreadImplementation::joinThread ( ThreadImpl * t)
inlineoverridevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 191 du fichier TBBThreadImplementation.cc.

◆ lockMutex()

void Arcane::TBBThreadImplementation::lockMutex ( MutexImpl * mutex)
inlineoverridevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 231 du fichier TBBThreadImplementation.cc.

◆ lockSpinLock()

void Arcane::TBBThreadImplementation::lockSpinLock ( Int64 * spin_lock_addr,
Int64 * scoped_spin_lock_addr )
inlineoverridevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 207 du fichier TBBThreadImplementation.cc.

◆ removeReference()

void Arcane::TBBThreadImplementation::removeReference ( )
inlineoverrideprivatevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 141 du fichier TBBThreadImplementation.cc.

◆ unlockMutex()

void Arcane::TBBThreadImplementation::unlockMutex ( MutexImpl * mutex)
inlineoverridevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 236 du fichier TBBThreadImplementation.cc.

◆ unlockSpinLock()

void Arcane::TBBThreadImplementation::unlockSpinLock ( Int64 * spin_lock_addr,
Int64 * scoped_spin_lock_addr )
inlineoverridevirtual

Implémente Arcane::IThreadImplementation.

Définition à la ligne 213 du fichier TBBThreadImplementation.cc.

Documentation des données membres

◆ m_global_mutex_impl

MutexImpl* Arcane::TBBThreadImplementation::m_global_mutex_impl = nullptr
private

Définition à la ligne 262 du fichier TBBThreadImplementation.cc.

◆ m_std_thread_implementation

Ref<IThreadImplementation> Arcane::TBBThreadImplementation::m_std_thread_implementation
private

Définition à la ligne 263 du fichier TBBThreadImplementation.cc.

◆ m_use_tbb_barrier

bool Arcane::TBBThreadImplementation::m_use_tbb_barrier = false
private

Définition à la ligne 261 du fichier TBBThreadImplementation.cc.


La documentation de cette classe a été générée à partir du fichier suivant :