38 #ifndef BLOCXX_THREAD_POOL_HPP_INCLUDE_GUARD_
39 #define BLOCXX_THREAD_POOL_HPP_INCLUDE_GUARD_
40 #include "blocxx/BLOCXX_config.h"
49 namespace BLOCXX_NAMESPACE
74 UNLIMITED_QUEUE_SIZE = 0
105 ThreadPool(PoolType poolType, UInt32 numThreads, UInt32 maxQueueSize,
const Logger& logger,
const String& poolName=
"");
106 ThreadPool(PoolType poolType, UInt32 numThreads, UInt32 maxQueueSize,
const String& poolName=
"");
128 E_FINISH_WORK_IN_QUEUE
145 void shutdown(EShutdownQueueFlag finishWorkInQueue = E_FINISH_WORK_IN_QUEUE,
const Timeout& timeout =
Timeout::infinite);
146 void shutdown(EShutdownQueueFlag finishWorkInQueue,
int timeoutSecs)
BLOCXX_DEPRECATED;
170 void shutdown(EShutdownQueueFlag finishWorkInQueue,
const Timeout& shutdownTimeout,
const Timeout& definitiveCancelTimeout);
175 void waitForEmptyQueue();
186 #pragma warning (push)
187 #pragma warning (disable: 4251)
193 #pragma warning (pop)