Groonga 3.0.9 Source Code Document
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Macros | Functions | Variables
ngx_event_posted.h File Reference
#include <ngx_config.h>
#include <ngx_core.h>
#include <ngx_event.h>
Include dependency graph for ngx_event_posted.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define ngx_locked_post_event(ev, queue)
#define ngx_post_event(ev, queue)
#define ngx_delete_posted_event(ev)

Functions

void ngx_event_process_posted (ngx_cycle_t *cycle, ngx_thread_volatile ngx_event_t **posted)
void ngx_wakeup_worker_thread (ngx_cycle_t *cycle)

Variables

ngx_thread_volatile ngx_event_tngx_posted_accept_events
ngx_thread_volatile ngx_event_tngx_posted_events

Macro Definition Documentation

#define ngx_delete_posted_event (   ev)
Value:
\
*(ev->prev) = ev->next; \
\
if (ev->next) { \
ev->next->prev = ev->prev; \
} \
\
ev->prev = NULL; \
ngx_log_debug1(NGX_LOG_DEBUG_CORE, ev->log, 0, \
"delete posted event %p", ev);

Definition at line 48 of file ngx_event_posted.h.

#define ngx_locked_post_event (   ev,
  queue 
)
Value:
\
if (ev->prev == NULL) { \
ev->next = (ngx_event_t *) *queue; \
ev->prev = (ngx_event_t **) queue; \
*queue = ev; \
\
if (ev->next) { \
ev->next->prev = &ev->next; \
} \
ngx_log_debug1(NGX_LOG_DEBUG_CORE, ev->log, 0, "post event %p", ev); \
\
} else { \
ngx_log_debug1(NGX_LOG_DEBUG_CORE, ev->log, 0, \
"update posted event %p", ev); \
}

Definition at line 22 of file ngx_event_posted.h.

#define ngx_post_event (   ev,
  queue 
)
Value:
\
ngx_mutex_lock(ngx_posted_events_mutex); \
ngx_locked_post_event(ev, queue); \
ngx_mutex_unlock(ngx_posted_events_mutex);

Definition at line 41 of file ngx_event_posted.h.

Function Documentation

void ngx_event_process_posted ( ngx_cycle_t cycle,
ngx_thread_volatile ngx_event_t **  posted 
)

Definition at line 22 of file ngx_event_posted.c.

Here is the caller graph for this function:

void ngx_wakeup_worker_thread ( ngx_cycle_t cycle)

Definition at line 169 of file ngx_event_posted.c.

Here is the caller graph for this function:

Variable Documentation

ngx_thread_volatile ngx_event_t* ngx_posted_accept_events

Definition at line 13 of file ngx_event_posted.c.

ngx_thread_volatile ngx_event_t* ngx_posted_events

Definition at line 14 of file ngx_event_posted.c.