00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
#ifndef APR_QUEUE_H
00017
#define APR_QUEUE_H
00018
00019
#if APR_HAS_THREADS
00020
00028
#include "apu.h"
00029
#include "apr_errno.h"
00030
#include "apr_pools.h"
00031
00032
#ifdef __cplusplus
00033
extern "C" {
00034
#endif
00035
00045 typedef struct apr_queue_t apr_queue_t;
00046
00053
APU_DECLARE(apr_status_t) apr_queue_create(apr_queue_t **queue,
00054
unsigned int queue_capacity,
00055 apr_pool_t *a);
00056
00066 APU_DECLARE(apr_status_t) apr_queue_push(apr_queue_t *queue,
void *data);
00067
00077 APU_DECLARE(apr_status_t) apr_queue_pop(apr_queue_t *queue,
void **data);
00078
00089 APU_DECLARE(apr_status_t) apr_queue_trypush(apr_queue_t *queue,
void *data);
00090
00101 APU_DECLARE(apr_status_t) apr_queue_trypop(apr_queue_t *queue,
void **data);
00102
00111 APU_DECLARE(
unsigned int) apr_queue_size(apr_queue_t *queue);
00112
00118 APU_DECLARE(apr_status_t) apr_queue_interrupt_all(apr_queue_t *queue);
00119
00126 APU_DECLARE(apr_status_t) apr_queue_term(apr_queue_t *queue);
00127
00128 #ifdef __cplusplus
00129 }
00130 #endif
00131
00134 #endif
00135
00136 #endif