void * mympd_queue_free(struct t_mympd_queue *queue)
Definition msg_queue.c:64
int mympd_queue_expire_age(struct t_mympd_queue *queue, time_t max_age_s)
Definition msg_queue.c:197
void * mympd_queue_shift(struct t_mympd_queue *queue, int timeout_ms, unsigned id)
Definition msg_queue.c:125
struct t_mympd_queue * mympd_queue_create(const char *name, enum mympd_queue_types type, bool event)
Definition msg_queue.c:41
bool mympd_queue_push(struct t_mympd_queue *queue, void *data, unsigned id)
Definition msg_queue.c:78
mympd_queue_types
Definition msg_queue.h:33
@ QUEUE_TYPE_REQUEST
queue holds only t_work_request entries
Definition msg_queue.h:34
@ QUEUE_TYPE_RESPONSE
queue holds only t_work_response entries
Definition msg_queue.h:35
Definition msg_queue.h:23
time_t timestamp
messages added timestamp
Definition msg_queue.h:26
unsigned id
id of the message
Definition msg_queue.h:25
void * data
data t_work_request or t_work_response
Definition msg_queue.h:24
struct t_mympd_msg * next
pointer to next message
Definition msg_queue.h:27
Definition msg_queue.h:41
struct t_mympd_msg * head
pointer to first message
Definition msg_queue.h:43
enum mympd_queue_types type
the queue type (request or response)
Definition msg_queue.h:48
pthread_mutex_t mutex
the mutex
Definition msg_queue.h:45
struct t_mympd_msg * tail
pointer to last message
Definition msg_queue.h:44
const char * name
descriptive name
Definition msg_queue.h:47
int event_fd
event fd
Definition msg_queue.h:50
unsigned length
length of the queue
Definition msg_queue.h:42
pthread_cond_t wakeup
condition variable for the mutex
Definition msg_queue.h:46
unsigned long mg_conn_id
mongoose listener id
Definition msg_queue.h:52
void * mg_mgr
mongoose mgr
Definition msg_queue.h:53