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::ManagedThread::ControlBlock Struct Reference

Heap-resident publishing block — shared by the thread, the manager's registry (as weak_ptr), and any current() lookup. More...

#include <thread.hpp>

Collaboration diagram for threadman::ManagedThread::ControlBlock:
Collaboration graph
[legend]

Public Attributes

std::uint64_t id = 0
 
std::string name
 
std::uint64_t native_id = 0
 
std::optional< std::uint64_t > pool_id
 
bool is_core = true
 
std::atomic< ThreadStatestate {ThreadState::Starting}
 
std::chrono::steady_clock::time_point started_at
 
std::chrono::steady_clock::time_point ended_at
 
std::exception_ptr exception
 
std::mutex mtx
 

Detailed Description

Heap-resident publishing block — shared by the thread, the manager's registry (as weak_ptr), and any current() lookup.

Member Data Documentation

◆ ended_at

std::chrono::steady_clock::time_point threadman::ManagedThread::ControlBlock::ended_at

◆ exception

std::exception_ptr threadman::ManagedThread::ControlBlock::exception

◆ id

std::uint64_t threadman::ManagedThread::ControlBlock::id = 0

◆ is_core

bool threadman::ManagedThread::ControlBlock::is_core = true

◆ mtx

std::mutex threadman::ManagedThread::ControlBlock::mtx
mutable

◆ name

std::string threadman::ManagedThread::ControlBlock::name

◆ native_id

std::uint64_t threadman::ManagedThread::ControlBlock::native_id = 0

◆ pool_id

std::optional<std::uint64_t> threadman::ManagedThread::ControlBlock::pool_id

◆ started_at

std::chrono::steady_clock::time_point threadman::ManagedThread::ControlBlock::started_at

◆ state

std::atomic<ThreadState> threadman::ManagedThread::ControlBlock::state {ThreadState::Starting}

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