|
threadman 0.1.0
Header-only C++23 managed threads, dynamic pools, futures, and executors
|

Files | |
| config.hpp | |
| Central feature-gate header for ThreadMan's optional integrations and tunable defaults. | |
| display.hpp | |
Re-export <commons/display_info.hpp> and attach non-intrusive comms::HasDisplayInfo<> specializations for the enums defined in <threadman/stats.hpp>. | |
| exceptions.hpp | |
| Typed exception hierarchy thrown by ThreadMan. | |
| executor.hpp | |
Executor abstraction — IExecutor (virtual), the Executor concept (duck-typed), and three concrete executors: InlineExecutor (runs on the calling thread), SingleThreadExecutor (owns a tiny thread pool of size 1), and ExecutorRef<Exec> (adapts a concept-conforming executor to IExecutor). | |
| future.hpp | |
threadman::Future<T> (one-shot), threadman::SharedFuture<T> (multi-shot), and threadman::Promise<T> — composable async result types with .then continuations dispatched through any executor. | |
| future_wait_pool.hpp | |
threadman::FutureWaitPool — a dynamically-scaling executor specialized for blocking waits, primarily adopting std::future / std::shared_future into ThreadMan's Future<T>. | |
| json.hpp | |
| nlohmann/json serialization hooks for the snapshot value-types and their enums. | |
| log.hpp | |
Cached subsystem loggers for the tm. | |
| manager.hpp | |
threadman::ThreadManager — central registry of all live ManagedThreads and ThreadPools, plus a dedicated housekeeping thread that drives per-pool scaling, prunes the registry, detects stuck tasks, and periodically publishes a ManagerSummary to subscribed listeners. | |
| metrics.hpp | |
Cached subsystem metrics for the tm_* Prometheus/OpenMetrics families, mirroring the tm. | |
| parcel.hpp | |
| Optional cpp-parcel adapter. | |
| stats.hpp | |
| Plain value snapshots of the live state of the ThreadMan world — threads, pools, tasks, futures, plus the aggregate ManagerSummary published periodically to listeners. | |
| task.hpp | |
threadman::TaskHandle — a ref-counted, shareable handle to a single task's lifecycle (id, name, owning pool, current state, and timestamps). | |
| thread.hpp | |
threadman::ManagedThread — RAII wrapper around std::jthread that publishes lifecycle state via a shared ControlBlock and registers itself with a ThreadManager for inspection. | |
| thread_pool.hpp | |
threadman::ThreadPool — a dynamic-scaling worker-queue executor. | |
| threadman.hpp | |
| Umbrella header for ThreadMan — pulls in every public type. | |