Classes | Public Member Functions | List of all members
util::SingleProducerTaskPool< Task > Class Template Reference
+ Inheritance diagram for util::SingleProducerTaskPool< Task >:
+ Collaboration diagram for util::SingleProducerTaskPool< Task >:

Public Member Functions

 SingleProducerTaskPool (const char *name, unsigned per_thread_capacity, unsigned num_threads=0)
 
template<typename... Args>
bool TryRunTask (Args &&... args)
 
template<typename... Args>
void RunTask (Args &&... args)
 
template<typename... Args>
void RunInline (Args &&... args)
 
template<typename... Args>
void SetSharedData (Args &&... args)
 
template<typename... Args>
void Launch (Args &&... args)
 
void Finalize ()
 
- Public Member Functions inherited from util::detail::SingleProducerTaskPoolBase
 SingleProducerTaskPoolBase (std::string name, unsigned per_thread_capacity, unsigned num_threads=0)
 
void WaitForTasksToComplete ()
 
unsigned thread_count () const
 
unsigned QueueSize () const
 

Additional Inherited Members

- Protected Member Functions inherited from util::detail::SingleProducerTaskPoolBase
void LaunchThreads ()
 
void JoinThreads ()
 
unsigned FindMostFreeThread () const
 
- Protected Attributes inherited from util::detail::SingleProducerTaskPoolBase
std::string base_name_
 
std::atomic_bool start_cancel_
 
unsigned per_thread_capacity_
 
unsigned thread_count_
 
std::unique_ptr< ThreadInfo[]> thread_info_
 
std::vector< std::unique_ptr< ThreadLocalInterface > > thread_interfaces_
 

Detailed Description

template<typename Task>
class util::SingleProducerTaskPool< Task >

Definition at line 163 of file sp_task_pool.h.


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