Arcane  v3.14.10.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 Arccore::IThreadImplementation
virtual void createSpinLock (Int64 *spin_lock_addr)=0
 
virtual void lockSpinLock (Int64 *spin_lock_addr, Int64 *scoped_spin_lock_addr)=0
 
virtual void unlockSpinLock (Int64 *spin_lock_addr, Int64 *scoped_spin_lock_addr)=0
 
virtual bool isMultiThread () const
 Vrai si l'implémentation supporte plusieurs threads.
 
- Fonctions membres publiques hérités de Arccore::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
 
MutexImpl * m_global_mutex_impl
 
Ref< IThreadImplementationm_std_thread_implementation
 

Description détaillée

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

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

Documentation des constructeurs et destructeur

◆ TBBThreadImplementation()

Arcane::TBBThreadImplementation::TBBThreadImplementation ( )
inline

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

◆ ~TBBThreadImplementation()

Arcane::TBBThreadImplementation::~TBBThreadImplementation ( )
inlineoverride

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

Documentation des fonctions membres

◆ addReference()

void Arcane::TBBThreadImplementation::addReference ( )
inlineoverrideprivatevirtual

Implémente Arccore::IThreadImplementation.

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

◆ build()

void Arcane::TBBThreadImplementation::build ( )
inline

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

◆ createBarrier()

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

Implémente Arccore::IThreadImplementation.

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

◆ createMutex()

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

Implémente Arccore::IThreadImplementation.

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

◆ createSpinLock()

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

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

◆ createThread()

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

Implémente Arccore::IThreadImplementation.

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

◆ currentThread()

Int64 Arcane::TBBThreadImplementation::currentThread ( )
inlineoverridevirtual

Implémente Arccore::IThreadImplementation.

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

◆ destroyMutex()

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

Implémente Arccore::IThreadImplementation.

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

◆ destroyThread()

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

Implémente Arccore::IThreadImplementation.

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

◆ initialize()

void Arcane::TBBThreadImplementation::initialize ( )
inlineoverridevirtual

Implémente Arccore::IThreadImplementation.

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

◆ joinThread()

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

Implémente Arccore::IThreadImplementation.

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

◆ lockMutex()

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

Implémente Arccore::IThreadImplementation.

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

◆ lockSpinLock()

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

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

◆ removeReference()

void Arcane::TBBThreadImplementation::removeReference ( )
inlineoverrideprivatevirtual

Implémente Arccore::IThreadImplementation.

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

◆ unlockMutex()

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

Implémente Arccore::IThreadImplementation.

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

◆ unlockSpinLock()

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

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

Documentation des données membres

◆ m_global_mutex_impl

MutexImpl* Arcane::TBBThreadImplementation::m_global_mutex_impl
private

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

◆ m_std_thread_implementation

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

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

◆ m_use_tbb_barrier

bool Arcane::TBBThreadImplementation::m_use_tbb_barrier
private

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


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