Apache2
Collaboration diagram for Event MPM:

Data Structures

struct  timer_event_t
 
struct  fd_queue_t
 

Macros

#define DEFAULT_START_DAEMON   3
 
#define DEFAULT_MAX_FREE_DAEMON   10
 
#define DEFAULT_MIN_FREE_DAEMON   3
 
#define DEFAULT_THREADS_PER_CHILD   25
 
#define ap_queue_pop_socket(q_, s_, p_)    ap_queue_pop_something((q_), (s_), NULL, (p_), NULL)
 

Typedefs

typedef struct fd_queue_info_t fd_queue_info_t
 
typedef struct fd_queue_elem_t fd_queue_elem_t
 
typedef struct timer_event_t timer_event_t
 
typedef struct fd_queue_t fd_queue_t
 

Functions

apr_status_t ap_queue_info_create (fd_queue_info_t **queue_info, apr_pool_t *pool, int max_idlers, int max_recycled_pools)
 
apr_status_t ap_queue_info_set_idle (fd_queue_info_t *queue_info, apr_pool_t *pool_to_recycle)
 
apr_status_t ap_queue_info_try_get_idler (fd_queue_info_t *queue_info)
 
apr_status_t ap_queue_info_wait_for_idler (fd_queue_info_t *queue_info, int *had_to_block)
 
apr_uint32_t ap_queue_info_num_idlers (fd_queue_info_t *queue_info)
 
apr_status_t ap_queue_info_term (fd_queue_info_t *queue_info)
 
void ap_queue_info_pop_pool (fd_queue_info_t *queue_info, apr_pool_t **recycled_pool)
 
void ap_queue_info_push_pool (fd_queue_info_t *queue_info, apr_pool_t *pool_to_recycle)
 
void ap_queue_info_free_idle_pools (fd_queue_info_t *queue_info)
 
apr_status_t ap_queue_create (fd_queue_t **pqueue, int capacity, apr_pool_t *p)
 
apr_status_t ap_queue_push_socket (fd_queue_t *queue, apr_socket_t *sd, void *sd_baton, apr_pool_t *p)
 
apr_status_t ap_queue_push_timer (fd_queue_t *queue, timer_event_t *te)
 
apr_status_t ap_queue_pop_something (fd_queue_t *queue, apr_socket_t **sd, void **sd_baton, apr_pool_t **p, timer_event_t **te)
 
apr_status_t ap_queue_interrupt_all (fd_queue_t *queue)
 
apr_status_t ap_queue_interrupt_one (fd_queue_t *queue)
 
apr_status_t ap_queue_term (fd_queue_t *queue)
 

Detailed Description

Macro Definition Documentation

◆ ap_queue_pop_socket

#define ap_queue_pop_socket (   q_,
  s_,
  p_ 
)     ap_queue_pop_something((q_), (s_), NULL, (p_), NULL)

◆ DEFAULT_MAX_FREE_DAEMON

#define DEFAULT_MAX_FREE_DAEMON   10

◆ DEFAULT_MIN_FREE_DAEMON

#define DEFAULT_MIN_FREE_DAEMON   3

◆ DEFAULT_START_DAEMON

#define DEFAULT_START_DAEMON   3

◆ DEFAULT_THREADS_PER_CHILD

#define DEFAULT_THREADS_PER_CHILD   25

Typedef Documentation

◆ fd_queue_elem_t

◆ fd_queue_info_t

◆ fd_queue_t

typedef struct fd_queue_t fd_queue_t

◆ timer_event_t

typedef struct timer_event_t timer_event_t

Function Documentation

◆ ap_queue_create()

apr_status_t ap_queue_create ( fd_queue_t **  pqueue,
int  capacity,
apr_pool_t p 
)

◆ ap_queue_info_create()

apr_status_t ap_queue_info_create ( fd_queue_info_t **  queue_info,
apr_pool_t pool,
int  max_idlers,
int  max_recycled_pools 
)

◆ ap_queue_info_free_idle_pools()

void ap_queue_info_free_idle_pools ( fd_queue_info_t queue_info)

◆ ap_queue_info_num_idlers()

apr_uint32_t ap_queue_info_num_idlers ( fd_queue_info_t queue_info)

◆ ap_queue_info_pop_pool()

void ap_queue_info_pop_pool ( fd_queue_info_t queue_info,
apr_pool_t **  recycled_pool 
)

◆ ap_queue_info_push_pool()

void ap_queue_info_push_pool ( fd_queue_info_t queue_info,
apr_pool_t pool_to_recycle 
)

◆ ap_queue_info_set_idle()

apr_status_t ap_queue_info_set_idle ( fd_queue_info_t queue_info,
apr_pool_t pool_to_recycle 
)

◆ ap_queue_info_term()

apr_status_t ap_queue_info_term ( fd_queue_info_t queue_info)

◆ ap_queue_info_try_get_idler()

apr_status_t ap_queue_info_try_get_idler ( fd_queue_info_t queue_info)

◆ ap_queue_info_wait_for_idler()

apr_status_t ap_queue_info_wait_for_idler ( fd_queue_info_t queue_info,
int had_to_block 
)

◆ ap_queue_interrupt_all()

apr_status_t ap_queue_interrupt_all ( fd_queue_t queue)

◆ ap_queue_interrupt_one()

apr_status_t ap_queue_interrupt_one ( fd_queue_t queue)

◆ ap_queue_pop_something()

apr_status_t ap_queue_pop_something ( fd_queue_t queue,
apr_socket_t **  sd,
void **  sd_baton,
apr_pool_t **  p,
timer_event_t **  te 
)

◆ ap_queue_push_socket()

apr_status_t ap_queue_push_socket ( fd_queue_t queue,
apr_socket_t sd,
void *  sd_baton,
apr_pool_t p 
)

◆ ap_queue_push_timer()

apr_status_t ap_queue_push_timer ( fd_queue_t queue,
timer_event_t te 
)

◆ ap_queue_term()

apr_status_t ap_queue_term ( fd_queue_t queue)