diff options
Diffstat (limited to 'src/server/threadpool.h')
-rw-r--r-- | src/server/threadpool.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/server/threadpool.h b/src/server/threadpool.h new file mode 100644 index 0000000..b3b0fe6 --- /dev/null +++ b/src/server/threadpool.h @@ -0,0 +1,23 @@ +#ifndef _THREADPOOL_H_ +#define _THREADPOOL_H_ + +#include "../types.h" + +/** + * Initialize the thread pool. This must be called before using + * threadpool_run, and must only be called once. + * @param maxIdleThreadCount maximum number of idle threads in the pool + * @return true if initialized successfully + */ +bool threadpool_init(int maxIdleThreadCount); + +/** + * Run a thread using the thread pool. + * @param startRoutine function to run in new thread + * @param arg argument to pass to thead + * @return true if thread was started + */ +bool threadpool_run(void *(*startRoutine)(void *), void *arg); + +#endif + |