aGrUM 2.3.2
a C++ library for (probabilistic) graphical models
gum::ThreadNumberManager Class Reference

A class to manage the number of threads to use in an algorithm. More...

#include <agrum/base/core/threads/threadNumberManager.h>

Inheritance diagram for gum::ThreadNumberManager:
Collaboration diagram for gum::ThreadNumberManager:

Public Member Functions

Constructors / Destructors
 ThreadNumberManager (Size nb_threads=0)
 default constructor
 ThreadNumberManager (const ThreadNumberManager &from)
 copy constructor
 ThreadNumberManager (ThreadNumberManager &&from)
 move constructor
virtual ~ThreadNumberManager ()
 destructor
Operators
ThreadNumberManageroperator= (const ThreadNumberManager &from)
 copy operator
ThreadNumberManageroperator= (ThreadNumberManager &&from)
 move operator
Accessors/Modifiers
virtual void setNumberOfThreads (Size nb)
 sets the number max of threads to be used by the class containing this ThreadNumberManager
virtual Size getNumberOfThreads () const
 returns the current max number of threads used by the class containing this ThreadNumberManager
bool isGumNumberOfThreadsOverriden () const
 indicates whether the class containing this ThreadNumberManager set its own number of threads

Private Attributes

Size _nb_threads_ {0}
 the max number of threads used by the class

Detailed Description

A class to manage the number of threads to use in an algorithm.

Definition at line 63 of file threadNumberManager.h.

Constructor & Destructor Documentation

◆ ThreadNumberManager() [1/3]

gum::ThreadNumberManager::ThreadNumberManager ( Size nb_threads = 0)

default constructor

Referenced by gum::learning::IBNLearner::IBNLearner(), gum::learning::IBNLearner::IBNLearner(), gum::ScheduledInference::ScheduledInference(), gum::ScheduledInference::ScheduledInference(), gum::ScheduledInference::ScheduledInference(), ThreadNumberManager(), ThreadNumberManager(), operator=(), and operator=().

Here is the caller graph for this function:

◆ ThreadNumberManager() [2/3]

gum::ThreadNumberManager::ThreadNumberManager ( const ThreadNumberManager & from)

copy constructor

References ThreadNumberManager().

Here is the call graph for this function:

◆ ThreadNumberManager() [3/3]

gum::ThreadNumberManager::ThreadNumberManager ( ThreadNumberManager && from)

move constructor

References ThreadNumberManager().

Here is the call graph for this function:

◆ ~ThreadNumberManager()

virtual gum::ThreadNumberManager::~ThreadNumberManager ( )
virtual

destructor

Member Function Documentation

◆ getNumberOfThreads()

virtual Size gum::ThreadNumberManager::getNumberOfThreads ( ) const
virtual

◆ isGumNumberOfThreadsOverriden()

bool gum::ThreadNumberManager::isGumNumberOfThreadsOverriden ( ) const
virtual

indicates whether the class containing this ThreadNumberManager set its own number of threads

Implements gum::IThreadNumberManager.

Referenced by gum::learning::IBNLearner::createParamEstimator_(), and gum::learning::IBNLearner::createScore_().

Here is the caller graph for this function:

◆ operator=() [1/2]

ThreadNumberManager & gum::ThreadNumberManager::operator= ( const ThreadNumberManager & from)

copy operator

References ThreadNumberManager().

Referenced by gum::learning::IBNLearner::operator=(), gum::learning::IBNLearner::operator=(), gum::ScheduledInference::operator=(), and gum::ScheduledInference::operator=().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=() [2/2]

ThreadNumberManager & gum::ThreadNumberManager::operator= ( ThreadNumberManager && from)

move operator

References ThreadNumberManager().

Here is the call graph for this function:

◆ setNumberOfThreads()

virtual void gum::ThreadNumberManager::setNumberOfThreads ( Size nb)
virtual

sets the number max of threads to be used by the class containing this ThreadNumberManager

Parameters
nbthe number of threads to be used. If this number is set to 0, then it is defaulted to aGrUM's number of threads

Implements gum::IThreadNumberManager.

Reimplemented in gum::learning::IBNLearner, gum::learning::RecordCounter, gum::ScheduledInference, and gum::SchedulerParallel.

Referenced by gum::learning::IBNLearner::setNumberOfThreads(), and gum::ScheduledInference::setNumberOfThreads().

Here is the caller graph for this function:

Member Data Documentation

◆ _nb_threads_

Size gum::ThreadNumberManager::_nb_threads_ {0}
private

the max number of threads used by the class

Definition at line 126 of file threadNumberManager.h.

126{0};

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