Chicane

Parallel

Header
Includes/Chicane/Core/Worker/Pool/Parallel.hpp
Namespace
Chicane::WorkerPoolParallel

Types

NameValueDescription
Job
std::function<void(std::size_t)>

Constructors

NameDescription
WorkerPoolParallel()

Destructors

NameDescription
~WorkerPoolParallel()

Functions

AccessReturnModifierNameDescription
public
bool
static
sIsWorker()
public
void
run(
std::size_t inCount, 
const  Job& inJob
)
public
void
detach(
std::function<void()> inJob
)
private
void
shutdown()
private
void
ensureWorkers()
private
void
loop()
private
bool
const
hasWork()

Members

AccessTypeModifierNameDescription
public
job
public
std::size_t
next
public
std::size_t
count
public
std::size_t
remaining
public
std::exception_ptr
error
public
std::condition_variable
done
private
std::mutex
m_mutex
private
std::condition_variable
m_signal
private
std::deque<std::shared_ptr<Batch>>
m_batches
private
std::vector<std::thread>
m_workers
private
bool
m_bShutdown