threadman 0.1.0
Header-only C++23 managed threads, dynamic pools, futures, and executors
Loading...
Searching...
No Matches
Classes | Namespaces
exceptions.hpp File Reference

Typed exception hierarchy thrown by ThreadMan. More...

#include <stdexcept>
Include dependency graph for exceptions.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  threadman::Exception
 Root of every exception thrown by ThreadMan. More...
 
class  threadman::FutureError
 Generic future/promise error. More...
 
class  threadman::BrokenPromiseError
 A Promise was dropped before it satisfied its Future. More...
 
class  threadman::FutureAlreadyRetrievedError
 Promise::get_future() was called more than once on the same promise. More...
 
class  threadman::PromiseAlreadySatisfiedError
 set_value() / set_exception() was called twice on the same promise. More...
 
class  threadman::ContinuationAlreadyRegisteredError
 A second .then() was registered on a one-shot threadman::Future. More...
 
class  threadman::PoolShuttingDownError
 Submitting work to a pool that is shutting down or terminated. More...
 
class  threadman::PoolQueueFullError
 Submitting work to a bounded pool whose queue is already at capacity. More...
 
class  threadman::TaskCancelledError
 A queued task was cancelled — typically because shutdown_now() drained the queue before the task could run. More...
 
class  threadman::HousekeeperError
 A failure originating from the housekeeping thread (listener crashed, internal invariant violated). More...
 

Namespaces

namespace  threadman
 

Detailed Description

Typed exception hierarchy thrown by ThreadMan.

Every throw site in the library raises a subclass of threadman::Exception, itself a std::runtime_error. Catch the base to swallow anything from threadman or narrow in on a specific category: