threadman 0.1.0
Header-only C++23 managed threads, dynamic pools, futures, and executors
Loading...
Searching...
No Matches
Public Attributes | List of all members
threadman::ThreadPoolOptions Struct Reference

#include <thread_pool.hpp>

Collaboration diagram for threadman::ThreadPoolOptions:
Collaboration graph
[legend]

Public Attributes

std::string name = "tm::pool"
 
std::size_t min_workers = 1
 
std::size_t max_workers = std::thread::hardware_concurrency()
 
std::chrono::milliseconds scale_up_wait {THREADMAN_DEFAULT_SCALE_UP_WAIT_MS}
 
std::size_t scale_up_when_queue_exceeds = THREADMAN_DEFAULT_SCALE_UP_QUEUE_THRESHOLD
 
std::chrono::milliseconds idle_timeout {THREADMAN_DEFAULT_IDLE_TIMEOUT_MS}
 
std::chrono::milliseconds scale_check_interval {THREADMAN_DEFAULT_SCALE_CHECK_INTERVAL_MS}
 
std::size_t max_queue_size = 0
 
std::chrono::milliseconds stuck_task_threshold {THREADMAN_DEFAULT_STUCK_TASK_THRESHOLD_MS}
 
std::size_t recent_tasks_capacity = THREADMAN_RECENT_TASKS_CAPACITY
 
ThreadManagermanager = nullptr
 

Member Data Documentation

◆ idle_timeout

std::chrono::milliseconds threadman::ThreadPoolOptions::idle_timeout {THREADMAN_DEFAULT_IDLE_TIMEOUT_MS}

◆ manager

ThreadManager* threadman::ThreadPoolOptions::manager = nullptr

◆ max_queue_size

std::size_t threadman::ThreadPoolOptions::max_queue_size = 0

◆ max_workers

std::size_t threadman::ThreadPoolOptions::max_workers = std::thread::hardware_concurrency()

◆ min_workers

std::size_t threadman::ThreadPoolOptions::min_workers = 1

◆ name

std::string threadman::ThreadPoolOptions::name = "tm::pool"

◆ recent_tasks_capacity

std::size_t threadman::ThreadPoolOptions::recent_tasks_capacity = THREADMAN_RECENT_TASKS_CAPACITY

◆ scale_check_interval

std::chrono::milliseconds threadman::ThreadPoolOptions::scale_check_interval {THREADMAN_DEFAULT_SCALE_CHECK_INTERVAL_MS}

◆ scale_up_wait

std::chrono::milliseconds threadman::ThreadPoolOptions::scale_up_wait {THREADMAN_DEFAULT_SCALE_UP_WAIT_MS}

◆ scale_up_when_queue_exceeds

std::size_t threadman::ThreadPoolOptions::scale_up_when_queue_exceeds = THREADMAN_DEFAULT_SCALE_UP_QUEUE_THRESHOLD

◆ stuck_task_threshold

std::chrono::milliseconds threadman::ThreadPoolOptions::stuck_task_threshold {THREADMAN_DEFAULT_STUCK_TASK_THRESHOLD_MS}

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