Mercurial > hg > nginx-quic
comparison src/event/ngx_event.h @ 64:34d647deb1da
nginx-0.0.1-2003-03-04-09:33:48 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Tue, 04 Mar 2003 06:33:48 +0000 |
parents | 36d2c25cc9bb |
children | 4222c496acb3 |
comparison
equal
deleted
inserted
replaced
63:36d2c25cc9bb | 64:34d647deb1da |
---|---|
8 #include <ngx_socket.h> | 8 #include <ngx_socket.h> |
9 #include <ngx_log.h> | 9 #include <ngx_log.h> |
10 #include <ngx_alloc.h> | 10 #include <ngx_alloc.h> |
11 #include <ngx_array.h> | 11 #include <ngx_array.h> |
12 | 12 |
13 /* STUB */ | |
14 #define NGX_LOWAT 10000 | |
13 | 15 |
14 #define NGX_INVALID_INDEX 0x80000000 | 16 #define NGX_INVALID_INDEX 0x80000000 |
15 | 17 |
16 typedef struct ngx_event_s ngx_event_t; | 18 typedef struct ngx_event_s ngx_event_t; |
17 | 19 |
77 #endif | 79 #endif |
78 | 80 |
79 #if (HAVE_KQUEUE) | 81 #if (HAVE_KQUEUE) |
80 unsigned eof:1; | 82 unsigned eof:1; |
81 int error; | 83 int error; |
84 #endif | |
85 | |
86 #if (HAVE_LOWAT_EVENT) /* kqueue's NOTE_LOWAT */ | |
87 int lowat; | |
82 #endif | 88 #endif |
83 | 89 |
84 | 90 |
85 #if (HAVE_AIO) | 91 #if (HAVE_AIO) |
86 | 92 |
149 #define NGX_HAVE_CLEAR_EVENT 4 | 155 #define NGX_HAVE_CLEAR_EVENT 4 |
150 | 156 |
151 /* Event filter has kqueue features - eof flag, errno, available data, etc */ | 157 /* Event filter has kqueue features - eof flag, errno, available data, etc */ |
152 #define NGX_HAVE_KQUEUE_EVENT 8 | 158 #define NGX_HAVE_KQUEUE_EVENT 8 |
153 | 159 |
154 /* Event filter notifies only changes (edgesi) but not initial level - epoll */ | 160 /* Event filter supports low water mark - kqueue's NOTE_LOWAT, |
155 #define NGX_HAVE_EDGE_EVENT 16 | 161 early kqueue implementations have no NOTE_LOWAT so we need separate flag */ |
162 #define NGX_HAVE_LOWAT_EVENT 16 | |
163 | |
164 /* Event filter notifies only changes (edges) but not initial level - epoll */ | |
165 #define NGX_HAVE_EDGE_EVENT 32 | |
156 | 166 |
157 /* No need to add or delete event filters - rt signals */ | 167 /* No need to add or delete event filters - rt signals */ |
158 #define NGX_HAVE_SIGIO_EVENT 32 | 168 #define NGX_HAVE_SIGIO_EVENT 64 |
159 | 169 |
160 /* No need to add or delete event filters - overlapped, aio_read, aioread */ | 170 /* No need to add or delete event filters - overlapped, aio_read, aioread */ |
161 #define NGX_HAVE_AIO_EVENT 64 | 171 #define NGX_HAVE_AIO_EVENT 128 |
162 | 172 |
163 /* Need to add socket or halde only once - i/o completion port. | 173 /* Need to add socket or halde only once - i/o completion port. |
164 It also requires to set HAVE_AIO_EVENT and NGX_HAVE_AIO_EVENT */ | 174 It also requires to set HAVE_AIO_EVENT and NGX_HAVE_AIO_EVENT */ |
165 #define NGX_HAVE_IOCP_EVENT 128 | 175 #define NGX_HAVE_IOCP_EVENT 256 |
176 | |
166 | 177 |
167 /* Event filter is deleted before closing file. Has no meaning | 178 /* Event filter is deleted before closing file. Has no meaning |
168 for select, poll, epoll. | 179 for select, poll, epoll. |
169 | 180 |
170 kqueue: kqueue deletes event filters for file that closed | 181 kqueue: kqueue deletes event filters for file that closed |