tess 1.0.0
Performance-first tile and path simulation substrate
Loading...
Searching...
No Matches
tess::WorkerPoolPhaseExecutorImpl< CaptureExceptions > Class Template Reference

#include <tess/ops/phase_executor.h>

Inheritance diagram for tess::WorkerPoolPhaseExecutorImpl< CaptureExceptions >:

Public Member Functions

 WorkerPoolPhaseExecutorImpl (std::size_t worker_count)
 WorkerPoolPhaseExecutorImpl (const WorkerPoolPhaseExecutorImpl &)=delete
auto operator= (const WorkerPoolPhaseExecutorImpl &) -> WorkerPoolPhaseExecutorImpl &=delete
 WorkerPoolPhaseExecutorImpl (WorkerPoolPhaseExecutorImpl &&)=delete
auto operator= (WorkerPoolPhaseExecutorImpl &&) -> WorkerPoolPhaseExecutorImpl &=delete
auto worker_count () const noexcept -> std::size_t
void reserve_operations (std::size_t count) const
template<typename Fn>
auto for_each_operation (std::size_t first, std::size_t count, Fn &&fn) const -> PlannedExecutionResult

Static Public Attributes

static constexpr bool captures_callback_exceptions = CaptureExceptions

Detailed Description

template<bool CaptureExceptions>
class tess::WorkerPoolPhaseExecutorImpl< CaptureExceptions >

Persistent worker pool for allocation-free repeated dispatch. Callback exceptions are rethrown after join; callbacks must not re-enter the same pool. If callbacks throw concurrently, which exception is propagated is unspecified.


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