CUBRID Engine  latest
cubthread::worker_pool_task_capper< Context > Class Template Reference

#include <thread_worker_pool_taskcap.hpp>

Collaboration diagram for cubthread::worker_pool_task_capper< Context >:
Collaboration graph

Classes

class  capped_task
 

Public Member Functions

 worker_pool_task_capper (worker_pool< Context > *worker_pool)
 
 ~worker_pool_task_capper ()=default
 
bool try_task (task< Context > *task)
 
void push_task (task< Context > *task)
 
cubthread::worker_pool< Context > * get_worker_pool () const
 

Private Types

using context_type = Context
 
using task_type = task< Context >
 
using worker_pool_type = worker_pool< Context >
 

Private Member Functions

void end_task ()
 
void execute (task< Context > *task)
 

Private Attributes

cubthread::worker_pool< Context > * m_worker_pool
 
size_t m_tasks_available
 
size_t m_max_tasks
 
std::mutex m_mutex
 
std::condition_variable m_cond_var
 

Detailed Description

template<typename Context>
class cubthread::worker_pool_task_capper< Context >

Definition at line 31 of file thread_worker_pool_taskcap.hpp.

Member Typedef Documentation

template<typename Context>
using cubthread::worker_pool_task_capper< Context >::context_type = Context
private

Definition at line 34 of file thread_worker_pool_taskcap.hpp.

template<typename Context>
using cubthread::worker_pool_task_capper< Context >::task_type = task<Context>
private

Definition at line 35 of file thread_worker_pool_taskcap.hpp.

template<typename Context>
using cubthread::worker_pool_task_capper< Context >::worker_pool_type = worker_pool<Context>
private

Definition at line 36 of file thread_worker_pool_taskcap.hpp.

Constructor & Destructor Documentation

template<typename Context>
cubthread::worker_pool_task_capper< Context >::~worker_pool_task_capper ( )
default

Member Function Documentation

template<typename Context >
worker_pool< Context > * cubthread::worker_pool_task_capper< Context >::get_worker_pool ( ) const

Member Data Documentation

template<typename Context>
std::condition_variable cubthread::worker_pool_task_capper< Context >::m_cond_var
private
template<typename Context>
size_t cubthread::worker_pool_task_capper< Context >::m_max_tasks
private

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