Loading...
Searching...
No Matches
apr_thread_proc.h File Reference

APR Thread and Process Library. More...

`#include "apr.h"`
`#include "apr_file_io.h"`
`#include "apr_pools.h"`
`#include "apr_errno.h"`
`#include "apr_perms_set.h"`
Include dependency graph for apr_thread_proc.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures

struct | apr_proc_t

## Macros

#define | APR_PROC_CHECK_EXIT(x) (x & APR_PROC_EXIT)
#define | APR_PROC_CHECK_SIGNALED(x) (x & APR_PROC_SIGNAL)
#define | APR_PROC_CHECK_CORE_DUMP(x) (x & APR_PROC_SIGNAL_CORE)
#define | APR_NO_PIPE 0
#define | APR_FULL_BLOCK 1
#define | APR_FULL_NONBLOCK 2
#define | APR_PARENT_BLOCK 3
#define | APR_CHILD_BLOCK 4
#define | APR_NO_FILE 8
#define | APR_READ_BLOCK 3
#define | APR_WRITE_BLOCK 4
#define | APR_NO_FILE 8
#define | APR_LIMIT_CPU 0
#define | APR_LIMIT_MEM 1
#define | APR_LIMIT_NPROC 2
#define | APR_LIMIT_NOFILE 3
#define | APR_OC_REASON_DEATH 0
#define | APR_OC_REASON_UNWRITABLE 1
#define | APR_OC_REASON_RESTART 2
#define | APR_OC_REASON_UNREGISTER 3
#define | APR_OC_REASON_LOST 4
#define | APR_OC_REASON_RUNNING 5
#define | APR_PROC_DETACH_FOREGROUND 0
#define | APR_PROC_DETACH_DAEMONIZE 1

## Typedefs

typedef struct apr_proc_t | apr_proc_t
typedef void() | apr_child_errfn_t(apr_pool_t *proc, apr_status_t err, const char *description)
typedef struct apr_thread_t | apr_thread_t
typedef struct apr_threadattr_t | apr_threadattr_t
typedef struct apr_procattr_t | apr_procattr_t
typedef struct apr_thread_once_t | apr_thread_once_t
typedef struct apr_threadkey_t | apr_threadkey_t
typedef struct apr_other_child_rec_t | apr_other_child_rec_t
typedef void *(APR_THREAD_FUNC * | apr_thread_start_t) (apr_thread_t *, void *)

## Enumerations

enum | apr_cmdtype_e { APR_SHELLCMD , APR_PROGRAM , APR_PROGRAM_ENV , APR_PROGRAM_PATH , APR_SHELLCMD_ENV }
enum | apr_wait_how_e { APR_WAIT , APR_NOWAIT }
enum | apr_exit_why_e { APR_PROC_EXIT = 1 , APR_PROC_SIGNAL = 2 , APR_PROC_SIGNAL_CORE = 4 }
enum | apr_kill_conditions_e { APR_KILL_NEVER , APR_KILL_ALWAYS , APR_KILL_AFTER_TIMEOUT , APR_JUST_WAIT , APR_KILL_ONLY_ONCE }

## Functions

apr_status_t | apr_threadattr_create (apr_threadattr_t **new_attr, apr_pool_t *cont)
apr_status_t | apr_threadattr_detach_set (apr_threadattr_t *attr, apr_int32_t on)
apr_status_t | apr_threadattr_detach_get (apr_threadattr_t *attr)
apr_status_t | apr_threadattr_stacksize_set (apr_threadattr_t *attr, apr_size_t stacksize)
apr_status_t | apr_threadattr_guardsize_set (apr_threadattr_t *attr, apr_size_t guardsize)
apr_status_t | apr_thread_create (apr_thread_t **new_thread, apr_threadattr_t *attr, apr_thread_start_t func, void *data, apr_pool_t *cont)
apr_status_t | apr_thread_exit (apr_thread_t *thd, apr_status_t retval)
apr_status_t | apr_thread_join (apr_status_t *retval, apr_thread_t *thd)
void | apr_thread_yield (void)
apr_status_t | apr_thread_once_init (apr_thread_once_t **control, apr_pool_t *p)
apr_status_t | apr_thread_once (apr_thread_once_t *control, void(*func)(void))
apr_status_t | apr_thread_detach (apr_thread_t *thd)
apr_status_t | apr_thread_data_get (void **data, const char *key, apr_thread_t *thread)
apr_status_t | apr_thread_data_set (void *data, const char *key, apr_status_t(*cleanup)(void *), apr_thread_t *thread)
apr_status_t | apr_threadkey_private_create (apr_threadkey_t **key, void(*dest)(void *), apr_pool_t *cont)
apr_status_t | apr_threadkey_private_get (void **new_mem, apr_threadkey_t *key)
apr_status_t | apr_threadkey_private_set (void *priv, apr_threadkey_t *key)
apr_status_t | apr_threadkey_private_delete (apr_threadkey_t *key)
apr_status_t | apr_threadkey_data_get (void **data, const char *key, apr_threadkey_t *threadkey)
apr_status_t | apr_threadkey_data_set (void *data, const char *key, apr_status_t(*cleanup)(void *), apr_threadkey_t *threadkey)
apr_status_t | apr_procattr_create (apr_procattr_t **new_attr, apr_pool_t *cont)
apr_status_t | apr_procattr_io_set (apr_procattr_t *attr, apr_int32_t in, apr_int32_t out, apr_int32_t err)
apr_status_t | apr_procattr_child_in_set (struct apr_procattr_t *attr, apr_file_t *child_in, apr_file_t *parent_in)
apr_status_t | apr_procattr_child_out_set (struct apr_procattr_t *attr, apr_file_t *child_out, apr_file_t *parent_out)
apr_status_t | apr_procattr_child_err_set (struct apr_procattr_t *attr, apr_file_t *child_err, apr_file_t *parent_err)
apr_status_t | apr_procattr_dir_set (apr_procattr_t *attr, const char *dir)
apr_status_t | apr_procattr_cmdtype_set (apr_procattr_t *attr, apr_cmdtype_e cmd)
apr_status_t | apr_procattr_detach_set (apr_procattr_t *attr, apr_int32_t detach)
apr_status_t | apr_procattr_child_errfn_set (apr_procattr_t *attr, apr_child_errfn_t *errfn)
apr_status_t | apr_procattr_error_check_set (apr_procattr_t *attr, apr_int32_t chk)
apr_status_t | apr_procattr_addrspace_set (apr_procattr_t *attr, apr_int32_t addrspace)
apr_status_t | apr_procattr_user_set (apr_procattr_t *attr, const char *username, const char *password)
apr_status_t | apr_procattr_group_set (apr_procattr_t *attr, const char *groupname)
apr_status_t | apr_procattr_perms_set_register (apr_procattr_t *attr, apr_perms_setfn_t *perms_set_fn, void *data, apr_fileperms_t perms)
apr_status_t | apr_proc_create (apr_proc_t *new_proc, const char *progname, const char *const *args, const char *const *env, apr_procattr_t *attr, apr_pool_t *pool)
apr_status_t | apr_proc_wait (apr_proc_t *proc, int *exitcode, apr_exit_why_e *exitwhy, apr_wait_how_e waithow)
apr_status_t | apr_proc_wait_all_procs (apr_proc_t *proc, int *exitcode, apr_exit_why_e *exitwhy, apr_wait_how_e waithow, apr_pool_t *p)
apr_status_t | apr_proc_detach (int daemonize)
void | apr_proc_other_child_register (apr_proc_t *proc, void(*maintenance)(int reason, void *, int status), void *data, apr_file_t *write_fd, apr_pool_t *p)
void | apr_proc_other_child_unregister (void *data)
apr_status_t | apr_proc_other_child_alert (apr_proc_t *proc, int reason, int status)
void | apr_proc_other_child_refresh (apr_other_child_rec_t *ocr, int reason)
void | apr_proc_other_child_refresh_all (int reason)
apr_status_t | apr_proc_kill (apr_proc_t *proc, int sig)
void | apr_pool_note_subprocess (apr_pool_t *a, apr_proc_t *proc, apr_kill_conditions_e how)
apr_pool_t * | apr_thread_pool_get (const apr_thread_t *thethread)

## Detailed Description

APR Thread and Process Library.