|
ThreadSchedule 3.0.0
Modern C++ thread management library
|
Worker identity, CPU selection, and registration helpers. More...
#include "../../expected.hpp"#include "../registry/backend.hpp"#include "../scheduling/native.hpp"#include "../thread_backend.hpp"#include <algorithm>#include <condition_variable>#include <cstddef>#include <exception>#include <future>#include <iterator>#include <mutex>#include <string>#include <system_error>#include <type_traits>#include <utility>#include <vector>Go to the source code of this file.
Classes | |
| class | threadschedule::detail::worker_startup_latch |
| class | threadschedule::detail::worker_context_guard< Pool > |
Namespaces | |
| namespace | threadschedule |
| namespace | threadschedule::detail |
| Aggregates multiple thread_registry_backend instances into a single queryable view. | |
Functions | |
| template<typename Iterator > | |
| auto | threadschedule::detail::multipass_range_size (Iterator begin, Iterator end) -> size_t |
| void | threadschedule::detail::throw_worker_deadlock () |
| auto | threadschedule::detail::worker_thread_name (std::string const &name_prefix, size_t index) -> std::string |
| template<typename WorkerRange > | |
| auto | threadschedule::detail::configure_worker_threads (WorkerRange &workers, std::string const &name_prefix, native_scheduling_policy policy, native_thread_priority priority, thread_registry_backend *registry=nullptr) -> expected< void, std::error_code > |
| template<typename WorkerRange > | |
| auto | threadschedule::detail::configure_worker_threads (WorkerRange &workers, native_thread_config const &config, thread_registry_backend *registry=nullptr) -> expected< void, std::error_code > |
| template<typename WorkerRange > | |
| auto | threadschedule::detail::set_worker_affinity (WorkerRange &workers, native_thread_affinity const &affinity) -> expected< void, std::error_code > |
| template<typename WorkerRange > | |
| auto | threadschedule::detail::distribute_workers_across_cpus (WorkerRange &workers) -> expected< void, std::error_code > |
| template<typename Pool , typename Iterator , typename F > | |
| void | threadschedule::detail::parallel_for_each_chunked (Pool &pool, Iterator begin, Iterator end, F &&func, size_t num_workers) |
Variables | |
| template<typename Iterator > | |
| constexpr bool | threadschedule::detail::is_forward_iterator_v = std::is_base_of_v<std::forward_iterator_tag, typename std::iterator_traits<Iterator>::iterator_category> |
Worker identity, CPU selection, and registration helpers.
Self-contained internal implementation header.
Definition in file worker_context_guard.hpp.