Castor3D 0.16.0
Multiplatform 3D engine
Fonctions membres publiques | Liste de tous les membres
Référence de la classe castor::ThreadPool

#include <ThreadPool.hpp>

Graphe d'héritage de castor::ThreadPool:
Inheritance graph
[légende]
Graphe de collaboration de castor::ThreadPool:
Collaboration graph
[légende]

Fonctions membres publiques

CU_API ThreadPool (size_t count)
 Constructeur, initialise le pool au nombre de threads donné.
 
CU_API ~ThreadPool () noexcept
 Destructeur.
 
CU_API bool isEmpty () const
 
CU_API bool isFull () const
 
CU_API bool waitAll (Milliseconds const &timeout) const
 Attend que tous les threads aient terminé leur tâche.
 
CU_API void pushJob (WorkerThread::Job job)
 donne à un thread de travail la tâche donnée.
 
size_t getCount () const noexcept
 

Membres hérités additionnels

- Fonctions membres protégées hérités de castor::NonMovable
 NonMovable ()=default
 Constructeur.
 
 ~NonMovable () noexcept=default
 Destructeur.
 

Documentation des constructeurs et destructeur

◆ ThreadPool()

CU_API castor::ThreadPool::ThreadPool ( size_t count)
explicit

Constructeur, initialise le pool au nombre de threads donné.

Paramètres
[in]countLe nombre de threads du pool.

◆ ~ThreadPool()

CU_API castor::ThreadPool::~ThreadPool ( )
noexcept

Destructeur.

Documentation des fonctions membres

◆ getCount()

size_t castor::ThreadPool::getCount ( ) const
inlinenoexcept
Renvoie
Le nombre de threads.

◆ isEmpty()

CU_API bool castor::ThreadPool::isEmpty ( ) const
Renvoie
true si tous les threads sont occupés.

◆ isFull()

CU_API bool castor::ThreadPool::isFull ( ) const
Renvoie
true si tous les threads sont inoccupés.

◆ pushJob()

CU_API void castor::ThreadPool::pushJob ( WorkerThread::Job job)

donne à un thread de travail la tâche donnée.

Remarques
Si aucun thread n'est disponible, attend que l'un d'eux finisse sa tâche.
Paramètres
[in]jobLa tâche.

◆ waitAll()

CU_API bool castor::ThreadPool::waitAll ( Milliseconds const & timeout) const

Attend que tous les threads aient terminé leur tâche.

Paramètres
[in]timeoutLe temps d'attente maximum.
Renvoie
true Si tous les threads on terminé.

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