6 #ifndef INCLUDED_ILM_THREAD_POOL_H
7 #define INCLUDED_ILM_THREAD_POOL_H
56 virtual int numThreads ()
const = 0;
58 virtual void setNumThreads (
int count) = 0;
60 virtual void addTask (
Task* task) = 0;
64 virtual void finish () = 0;
67 ThreadPoolProvider (
const ThreadPoolProvider&) =
delete;
68 ThreadPoolProvider&
operator= (
const ThreadPoolProvider&) =
delete;
69 ThreadPoolProvider (ThreadPoolProvider&&) =
delete;
70 ThreadPoolProvider&
operator= (ThreadPoolProvider&&) =
delete;
88 static unsigned estimateThreadCountForFileIO ();
104 ThreadPool (
const ThreadPool&) =
delete;
105 ThreadPool&
operator= (
const ThreadPool&) =
delete;
106 ThreadPool (ThreadPool&&) =
delete;
107 ThreadPool&
operator= (ThreadPool&&) =
delete;
160 Task (
const Task&) =
delete;
162 Task (Task&&) =
delete;
165 virtual void execute () = 0;
179 TaskGroup (
const TaskGroup& other) =
delete;
180 TaskGroup&
operator= (
const TaskGroup& other) =
delete;
181 TaskGroup (TaskGroup&& other) =
delete;
182 TaskGroup&
operator= (TaskGroup&& other) =
delete;
195 #endif // INCLUDED_ILM_THREAD_POOL_H
#define ILMTHREAD_INTERNAL_NAMESPACE_HEADER_ENTER
#define ILMTHREAD_INTERNAL_NAMESPACE_HEADER_EXIT
#define ILMTHREAD_EXPORT_TYPE
LeafData & operator=(const LeafData &)=delete