#include <bindings.dsl.h>
#include <apr_thread_pool.h>
module Bindings.APR.Thread.Pool where
#strict_import
import Bindings.APR
import Bindings.APR.ErrNo
import Bindings.APR.Pools
import Bindings.APR.Thread.Proc
import Bindings.APR.Time
#if APR_HAS_THREADS
# opaque_t apr_thread_pool_t
# num APR_THREAD_TASK_PRIORITY_LOWEST
# num APR_THREAD_TASK_PRIORITY_LOW
# num APR_THREAD_TASK_PRIORITY_NORMAL
# num APR_THREAD_TASK_PRIORITY_HIGH
# num APR_THREAD_TASK_PRIORITY_HIGHEST
# ccall apr_thread_pool_create , Ptr (Ptr <apr_thread_pool_t>) -> <apr_size_t> -> <apr_size_t> -> Ptr <apr_pool_t> -> IO <apr_status_t>
# ccall apr_thread_pool_destroy , Ptr <apr_thread_pool_t> -> IO <apr_status_t>
# ccall apr_thread_pool_push , Ptr <apr_thread_pool_t> -> <apr_thread_start_t> -> Ptr () -> <apr_byte_t> -> Ptr () -> IO <apr_status_t>
# ccall apr_thread_pool_schedule , Ptr <apr_thread_pool_t> -> <apr_thread_start_t> -> Ptr () -> <apr_interval_time_t> -> Ptr () -> IO <apr_status_t>
# ccall apr_thread_pool_top , Ptr <apr_thread_pool_t> -> <apr_thread_start_t> -> Ptr () -> <apr_byte_t> -> Ptr () -> IO <apr_status_t>
# ccall apr_thread_pool_tasks_cancel, Ptr <apr_thread_pool_t> -> Ptr () -> IO <apr_status_t>
# ccall apr_thread_pool_tasks_count , Ptr <apr_thread_pool_t> -> IO <apr_size_t>
# ccall apr_thread_pool_scheduled_tasks_count, Ptr <apr_thread_pool_t> -> IO <apr_size_t>
# ccall apr_thread_pool_threads_count , Ptr <apr_thread_pool_t> -> IO <apr_size_t>
# ccall apr_thread_pool_busy_count , Ptr <apr_thread_pool_t> -> IO <apr_size_t>
# ccall apr_thread_pool_idle_count , Ptr <apr_thread_pool_t> -> IO <apr_size_t>
# ccall apr_thread_pool_idle_max_set , Ptr <apr_thread_pool_t> -> <apr_size_t> -> IO <apr_size_t>
# ccall apr_thread_pool_tasks_run_count , Ptr <apr_thread_pool_t> -> IO <apr_size_t>
# ccall apr_thread_pool_tasks_high_count , Ptr <apr_thread_pool_t> -> IO <apr_size_t>
# ccall apr_thread_pool_threads_high_count , Ptr <apr_thread_pool_t> -> IO <apr_size_t>
# ccall apr_thread_pool_threads_idle_timeout_count, Ptr <apr_thread_pool_t> -> IO <apr_size_t>
# ccall apr_thread_pool_idle_max_get , Ptr <apr_thread_pool_t> -> IO <apr_size_t>
# ccall apr_thread_pool_thread_max_set, Ptr <apr_thread_pool_t> -> <apr_size_t> -> IO <apr_size_t>
# ccall apr_thread_pool_idle_wait_set , Ptr <apr_thread_pool_t> -> <apr_interval_time_t> -> IO <apr_interval_time_t>
# ccall apr_thread_pool_idle_wait_get , Ptr <apr_thread_pool_t> -> IO <apr_interval_time_t>
# ccall apr_thread_pool_thread_max_get, Ptr <apr_thread_pool_t> -> IO <apr_size_t>
# ccall apr_thread_pool_threshold_set , Ptr <apr_thread_pool_t> -> <apr_size_t> -> IO <apr_size_t>
# ccall apr_thread_pool_threshold_get , Ptr <apr_thread_pool_t> -> IO <apr_size_t>
# ccall apr_thread_pool_task_owner_get, Ptr <apr_thread_t> -> Ptr (Ptr ()) -> IO <apr_status_t>
#endif