UtilsLite
Utilities for C++ programming
Loading...
Searching...
No Matches
Utils::ThreadPoolBase Class Referenceabstract

#include <ThreadPoolBase.hxx>

Inheritance diagram for Utils::ThreadPoolBase:
Utils::ThreadPool0 Utils::ThreadPool1 Utils::ThreadPool2 Utils::ThreadPool3 Utils::ThreadPool4 Utils::ThreadPool5

Classes

class  ConcreteTask
 
class  Task
 

Public Member Functions

 ThreadPoolBase (ThreadPoolBase const &)=delete
 
 ThreadPoolBase (ThreadPoolBase &&)=delete
 
ThreadPoolBaseoperator= (ThreadPoolBase const &)=delete
 
ThreadPoolBaseoperator= (ThreadPoolBase &&)=delete
 
 ThreadPoolBase ()=default
 
virtual void exec (FUN &&)=0
 
template<typename Func, typename... Args>
void run (Func &&func, Args &&... args)
 
virtual void wait ()=0
 
virtual unsigned thread_count () const =0
 
virtual char const * name () const =0
 

Protected Types

typedef std::function< void(void)> FUN
 

Member Typedef Documentation

◆ FUN

typedef std::function<void(void)> Utils::ThreadPoolBase::FUN
protected

Constructor & Destructor Documentation

◆ ThreadPoolBase() [1/3]

Utils::ThreadPoolBase::ThreadPoolBase ( ThreadPoolBase const & )
delete

◆ ThreadPoolBase() [2/3]

Utils::ThreadPoolBase::ThreadPoolBase ( ThreadPoolBase && )
delete

◆ ThreadPoolBase() [3/3]

Utils::ThreadPoolBase::ThreadPoolBase ( )
default

Member Function Documentation

◆ exec()

virtual void Utils::ThreadPoolBase::exec ( FUN && )
pure virtual

◆ name()

virtual char const * Utils::ThreadPoolBase::name ( ) const
pure virtual

◆ operator=() [1/2]

ThreadPoolBase & Utils::ThreadPoolBase::operator= ( ThreadPoolBase && )
delete

◆ operator=() [2/2]

ThreadPoolBase & Utils::ThreadPoolBase::operator= ( ThreadPoolBase const & )
delete

◆ run()

template<typename Func, typename... Args>
void Utils::ThreadPoolBase::run ( Func && func,
Args &&... args )
inline

◆ thread_count()

virtual unsigned Utils::ThreadPoolBase::thread_count ( ) const
pure virtual

◆ wait()

virtual void Utils::ThreadPoolBase::wait ( )
pure virtual

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