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

Go to the source code of this file.

Data Structures

struct  ngx_event_mutex_t
struct  ngx_event_s
struct  ngx_event_actions_t
struct  ngx_event_conf_t
struct  ngx_event_module_t

Macros

#define NGX_INVALID_INDEX   0xd0d0d0d0
#define NGX_USE_LEVEL_EVENT   0x00000001
#define NGX_USE_ONESHOT_EVENT   0x00000002
#define NGX_USE_CLEAR_EVENT   0x00000004
#define NGX_USE_KQUEUE_EVENT   0x00000008
#define NGX_USE_LOWAT_EVENT   0x00000010
#define NGX_USE_GREEDY_EVENT   0x00000020
#define NGX_USE_EPOLL_EVENT   0x00000040
#define NGX_USE_RTSIG_EVENT   0x00000080
#define NGX_USE_AIO_EVENT   0x00000100
#define NGX_USE_IOCP_EVENT   0x00000200
#define NGX_USE_FD_EVENT   0x00000400
#define NGX_USE_TIMER_EVENT   0x00000800
#define NGX_USE_EVENTPORT_EVENT   0x00001000
#define NGX_USE_VNODE_EVENT   0x00002000
#define NGX_CLOSE_EVENT   1
#define NGX_DISABLE_EVENT   2
#define NGX_FLUSH_EVENT   4
#define NGX_LOWAT_EVENT   0
#define NGX_VNODE_EVENT   0
#define NGX_READ_EVENT   0
#define NGX_WRITE_EVENT   1
#define NGX_LEVEL_EVENT   0
#define NGX_ONESHOT_EVENT   1
#define NGX_CLEAR_EVENT   0 /* dummy declaration */
#define ngx_process_changes   ngx_event_actions.process_changes
#define ngx_process_events   ngx_event_actions.process_events
#define ngx_done_events   ngx_event_actions.done
#define ngx_add_event   ngx_event_actions.add
#define ngx_del_event   ngx_event_actions.del
#define ngx_add_conn   ngx_event_actions.add_conn
#define ngx_del_conn   ngx_event_actions.del_conn
#define ngx_add_timer   ngx_event_add_timer
#define ngx_del_timer   ngx_event_del_timer
#define ngx_recv   ngx_io.recv
#define ngx_recv_chain   ngx_io.recv_chain
#define ngx_udp_recv   ngx_io.udp_recv
#define ngx_send   ngx_io.send
#define ngx_send_chain   ngx_io.send_chain
#define NGX_EVENT_MODULE   0x544E5645 /* "EVNT" */
#define NGX_EVENT_CONF   0x02000000
#define NGX_UPDATE_TIME   1
#define NGX_POST_EVENTS   2
#define NGX_POST_THREAD_EVENTS   4
#define ngx_event_get_conf(conf_ctx, module)   (*(ngx_get_conf(conf_ctx, ngx_events_module))) [module.ctx_index];
#define ngx_event_ident(p)   ((ngx_connection_t *) (p))->fd

Functions

void ngx_event_accept (ngx_event_t *ev)
ngx_int_t ngx_trylock_accept_mutex (ngx_cycle_t *cycle)
u_char * ngx_accept_log_error (ngx_log_t *log, u_char *buf, size_t len)
void ngx_process_events_and_timers (ngx_cycle_t *cycle)
ngx_int_t ngx_handle_read_event (ngx_event_t *rev, ngx_uint_t flags)
ngx_int_t ngx_handle_write_event (ngx_event_t *wev, size_t lowat)
ngx_int_t ngx_send_lowat (ngx_connection_t *c, size_t lowat)

Variables

ngx_event_actions_t ngx_event_actions
ngx_os_io_t ngx_io
ngx_atomic_tngx_connection_counter
ngx_atomic_tngx_accept_mutex_ptr
ngx_shmtx_t ngx_accept_mutex
ngx_uint_t ngx_use_accept_mutex
ngx_uint_t ngx_accept_events
ngx_uint_t ngx_accept_mutex_held
ngx_msec_t ngx_accept_mutex_delay
ngx_int_t ngx_accept_disabled
sig_atomic_t ngx_event_timer_alarm
ngx_uint_t ngx_event_flags
ngx_module_t ngx_events_module
ngx_module_t ngx_event_core_module

Macro Definition Documentation

#define ngx_add_conn   ngx_event_actions.add_conn

Definition at line 448 of file ngx_event.h.

#define ngx_add_event   ngx_event_actions.add

Definition at line 446 of file ngx_event.h.

#define ngx_add_timer   ngx_event_add_timer

Definition at line 451 of file ngx_event.h.

#define NGX_CLEAR_EVENT   0 /* dummy declaration */

Definition at line 438 of file ngx_event.h.

#define NGX_CLOSE_EVENT   1

Definition at line 337 of file ngx_event.h.

#define ngx_del_conn   ngx_event_actions.del_conn

Definition at line 449 of file ngx_event.h.

#define ngx_del_event   ngx_event_actions.del

Definition at line 447 of file ngx_event.h.

#define ngx_del_timer   ngx_event_del_timer

Definition at line 452 of file ngx_event.h.

#define NGX_DISABLE_EVENT   2

Definition at line 343 of file ngx_event.h.

#define ngx_done_events   ngx_event_actions.done

Definition at line 444 of file ngx_event.h.

#define NGX_EVENT_CONF   0x02000000

Definition at line 465 of file ngx_event.h.

#define ngx_event_get_conf (   conf_ctx,
  module 
)    (*(ngx_get_conf(conf_ctx, ngx_events_module))) [module.ctx_index];

Definition at line 530 of file ngx_event.h.

#define ngx_event_ident (   p)    ((ngx_connection_t *) (p))->fd

Definition at line 556 of file ngx_event.h.

#define NGX_EVENT_MODULE   0x544E5645 /* "EVNT" */

Definition at line 464 of file ngx_event.h.

#define NGX_FLUSH_EVENT   4

Definition at line 348 of file ngx_event.h.

#define NGX_INVALID_INDEX   0xd0d0d0d0

Definition at line 16 of file ngx_event.h.

#define NGX_LEVEL_EVENT   0

Definition at line 424 of file ngx_event.h.

#define NGX_LOWAT_EVENT   0

Definition at line 352 of file ngx_event.h.

#define NGX_ONESHOT_EVENT   1

Definition at line 425 of file ngx_event.h.

#define NGX_POST_EVENTS   2

Definition at line 520 of file ngx_event.h.

#define NGX_POST_THREAD_EVENTS   4

Definition at line 521 of file ngx_event.h.

#define ngx_process_changes   ngx_event_actions.process_changes

Definition at line 442 of file ngx_event.h.

#define ngx_process_events   ngx_event_actions.process_events

Definition at line 443 of file ngx_event.h.

#define NGX_READ_EVENT   0

Definition at line 421 of file ngx_event.h.

#define ngx_recv   ngx_io.recv

Definition at line 457 of file ngx_event.h.

#define ngx_recv_chain   ngx_io.recv_chain

Definition at line 458 of file ngx_event.h.

#define ngx_send   ngx_io.send

Definition at line 460 of file ngx_event.h.

#define ngx_send_chain   ngx_io.send_chain

Definition at line 461 of file ngx_event.h.

#define ngx_udp_recv   ngx_io.udp_recv

Definition at line 459 of file ngx_event.h.

#define NGX_UPDATE_TIME   1

Definition at line 519 of file ngx_event.h.

#define NGX_USE_AIO_EVENT   0x00000100

Definition at line 295 of file ngx_event.h.

#define NGX_USE_CLEAR_EVENT   0x00000004

Definition at line 262 of file ngx_event.h.

#define NGX_USE_EPOLL_EVENT   0x00000040

Definition at line 284 of file ngx_event.h.

#define NGX_USE_EVENTPORT_EVENT   0x00001000

Definition at line 319 of file ngx_event.h.

#define NGX_USE_FD_EVENT   0x00000400

Definition at line 307 of file ngx_event.h.

#define NGX_USE_GREEDY_EVENT   0x00000020

Definition at line 279 of file ngx_event.h.

#define NGX_USE_IOCP_EVENT   0x00000200

Definition at line 301 of file ngx_event.h.

#define NGX_USE_KQUEUE_EVENT   0x00000008

Definition at line 268 of file ngx_event.h.

#define NGX_USE_LEVEL_EVENT   0x00000001

Definition at line 250 of file ngx_event.h.

#define NGX_USE_LOWAT_EVENT   0x00000010

Definition at line 274 of file ngx_event.h.

#define NGX_USE_ONESHOT_EVENT   0x00000002

Definition at line 256 of file ngx_event.h.

#define NGX_USE_RTSIG_EVENT   0x00000080

Definition at line 289 of file ngx_event.h.

#define NGX_USE_TIMER_EVENT   0x00000800

Definition at line 313 of file ngx_event.h.

#define NGX_USE_VNODE_EVENT   0x00002000

Definition at line 324 of file ngx_event.h.

#define NGX_VNODE_EVENT   0

Definition at line 353 of file ngx_event.h.

#define NGX_WRITE_EVENT   1

Definition at line 422 of file ngx_event.h.

Function Documentation

u_char* ngx_accept_log_error ( ngx_log_t log,
u_char *  buf,
size_t  len 
)

Definition at line 501 of file ngx_event_accept.c.

Here is the call graph for this function:

void ngx_event_accept ( ngx_event_t ev)

Definition at line 19 of file ngx_event_accept.c.

Here is the call graph for this function:

ngx_int_t ngx_handle_read_event ( ngx_event_t rev,
ngx_uint_t  flags 
)

Definition at line 283 of file ngx_event.c.

Here is the caller graph for this function:

ngx_int_t ngx_handle_write_event ( ngx_event_t wev,
size_t  lowat 
)

Definition at line 351 of file ngx_event.c.

Here is the call graph for this function:

Here is the caller graph for this function:

void ngx_process_events_and_timers ( ngx_cycle_t cycle)

Definition at line 203 of file ngx_event.c.

Here is the call graph for this function:

Here is the caller graph for this function:

ngx_int_t ngx_send_lowat ( ngx_connection_t c,
size_t  lowat 
)

Definition at line 867 of file ngx_event.c.

Here is the call graph for this function:

Here is the caller graph for this function:

ngx_int_t ngx_trylock_accept_mutex ( ngx_cycle_t cycle)

Definition at line 368 of file ngx_event_accept.c.

Here is the call graph for this function:

Here is the caller graph for this function:

Variable Documentation

ngx_int_t ngx_accept_disabled

Definition at line 58 of file ngx_event.c.

ngx_uint_t ngx_accept_events

Definition at line 55 of file ngx_event.c.

ngx_shmtx_t ngx_accept_mutex

Definition at line 53 of file ngx_event.c.

ngx_msec_t ngx_accept_mutex_delay

Definition at line 57 of file ngx_event.c.

ngx_uint_t ngx_accept_mutex_held

Definition at line 56 of file ngx_event.c.

ngx_atomic_t* ngx_accept_mutex_ptr

Definition at line 52 of file ngx_event.c.

ngx_atomic_t* ngx_connection_counter

Definition at line 49 of file ngx_event.c.

ngx_event_actions_t ngx_event_actions

Definition at line 45 of file ngx_event.c.

ngx_module_t ngx_event_core_module

Definition at line 186 of file ngx_event.c.

ngx_uint_t ngx_event_flags

Definition at line 44 of file ngx_event.c.

sig_atomic_t ngx_event_timer_alarm

Definition at line 40 of file ngx_event.c.

ngx_module_t ngx_events_module

Definition at line 103 of file ngx_event.c.

ngx_os_io_t ngx_io

Definition at line 13 of file ngx_connection.c.

ngx_uint_t ngx_use_accept_mutex

Definition at line 54 of file ngx_event.c.