libsir 2.2.5
Standard Incident Reporter
Loading...
Searching...
No Matches
threadpool.h
1/*
2 * threadpool.h
3 *
4 * Version: 2.2.5
5 *
6 * -----------------------------------------------------------------------------
7 *
8 * SPDX-License-Identifier: MIT
9 *
10 * Copyright (c) 2018-2024 Ryan M. Lederman <lederman@gmail.com>
11 * Copyright (c) 2018-2024 Jeffrey H. Johnson <trnsz@pobox.com>
12 *
13 * Permission is hereby granted, free of charge, to any person obtaining a copy of
14 * this software and associated documentation files (the "Software"), to deal in
15 * the Software without restriction, including without limitation the rights to
16 * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
17 * the Software, and to permit persons to whom the Software is furnished to do so,
18 * subject to the following conditions:
19 *
20 * The above copyright notice and this permission notice shall be included in all
21 * copies or substantial portions of the Software.
22 *
23 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
24 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
25 * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
26 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
27 * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
28 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29 *
30 * -----------------------------------------------------------------------------
31 */
32
33#ifndef _SIR_THREADPOOL_H_INCLUDED
34# define _SIR_THREADPOOL_H_INCLUDED
35
36# include "sir/types.h"
37
38# define SIR_THREADPOOL_MAX_THREADS 386
39
40bool _sir_threadpool_create(sir_threadpool** pool, size_t num_threads);
41bool _sir_threadpool_add_job(sir_threadpool* pool, sir_threadpool_job* job);
42bool _sir_threadpool_destroy(sir_threadpool** pool);
43
44#endif /* !_SIR_THREADPOOL_H_INCLUDED */
Job used by a job queue.
Definition types.h:396
Thread pool/job queue data container.
Definition types.h:402