|
CUBRID Engine
latest
|
#include <thread_worker_pool_taskcap.hpp>

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 |
Definition at line 31 of file thread_worker_pool_taskcap.hpp.
|
private |
Definition at line 34 of file thread_worker_pool_taskcap.hpp.
|
private |
Definition at line 35 of file thread_worker_pool_taskcap.hpp.
|
private |
Definition at line 36 of file thread_worker_pool_taskcap.hpp.
|
explicit |
|
default |
|
private |
Definition at line 136 of file thread_worker_pool_taskcap.hpp.
References assert, cubthread::worker_pool_task_capper< Context >::m_cond_var, cubthread::worker_pool_task_capper< Context >::m_mutex, and cubthread::worker_pool_task_capper< Context >::m_tasks_available.
Referenced by cubthread::worker_pool_task_capper< Context >::capped_task::execute().

|
private |
Definition at line 126 of file thread_worker_pool_taskcap.hpp.
References assert, cubthread::worker_pool_task_capper< Context >::m_tasks_available, and cubthread::worker_pool_task_capper< Context >::m_worker_pool.
Referenced by cubthread::worker_pool_task_capper< Context >::push_task(), and cubthread::worker_pool_task_capper< Context >::try_task().

| worker_pool< Context > * cubthread::worker_pool_task_capper< Context >::get_worker_pool | ( | ) | const |
Definition at line 149 of file thread_worker_pool_taskcap.hpp.
References cubthread::worker_pool_task_capper< Context >::m_worker_pool.
| void cubthread::worker_pool_task_capper< Context >::push_task | ( | task< Context > * | task | ) |
Definition at line 111 of file thread_worker_pool_taskcap.hpp.
References assert, cubthread::worker_pool_task_capper< Context >::execute(), cubthread::worker_pool_task_capper< Context >::m_cond_var, cubthread::worker_pool_task_capper< Context >::m_mutex, and cubthread::worker_pool_task_capper< Context >::m_tasks_available.
| bool cubthread::worker_pool_task_capper< Context >::try_task | ( | task< Context > * | task | ) |
Definition at line 95 of file thread_worker_pool_taskcap.hpp.
References cubthread::worker_pool_task_capper< Context >::execute(), cubthread::worker_pool_task_capper< Context >::m_mutex, and cubthread::worker_pool_task_capper< Context >::m_tasks_available.
Referenced by cubload::worker_manager_try_task().

|
private |
Definition at line 58 of file thread_worker_pool_taskcap.hpp.
Referenced by cubthread::worker_pool_task_capper< Context >::end_task(), and cubthread::worker_pool_task_capper< Context >::push_task().
|
private |
Definition at line 56 of file thread_worker_pool_taskcap.hpp.
Referenced by cubthread::worker_pool_task_capper< Context >::worker_pool_task_capper().
|
private |
Definition at line 57 of file thread_worker_pool_taskcap.hpp.
Referenced by cubthread::worker_pool_task_capper< Context >::end_task(), cubthread::worker_pool_task_capper< Context >::push_task(), and cubthread::worker_pool_task_capper< Context >::try_task().
|
private |
Definition at line 55 of file thread_worker_pool_taskcap.hpp.
Referenced by cubthread::worker_pool_task_capper< Context >::end_task(), cubthread::worker_pool_task_capper< Context >::execute(), cubthread::worker_pool_task_capper< Context >::push_task(), cubthread::worker_pool_task_capper< Context >::try_task(), and cubthread::worker_pool_task_capper< Context >::worker_pool_task_capper().
|
private |
Definition at line 54 of file thread_worker_pool_taskcap.hpp.
Referenced by cubthread::worker_pool_task_capper< Context >::execute(), and cubthread::worker_pool_task_capper< Context >::get_worker_pool().