Mercurial > hg > nginx
comparison src/event/ngx_event.h @ 69:e43f406e4525
nginx-0.0.1-2003-03-20-19:09:44 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Thu, 20 Mar 2003 16:09:44 +0000 |
parents | 5a7d1aaa1618 |
children | 869b10be682f |
comparison
equal
deleted
inserted
replaced
68:d549fdc17d7e | 69:e43f406e4525 |
---|---|
61 #if 0 | 61 #if 0 |
62 unsigned listening:1; | 62 unsigned listening:1; |
63 #endif | 63 #endif |
64 unsigned write:1; | 64 unsigned write:1; |
65 | 65 |
66 unsigned first:1; | |
66 unsigned active:1; | 67 unsigned active:1; |
67 unsigned ready:1; | 68 unsigned ready:1; |
68 unsigned timedout:1; | 69 unsigned timedout:1; |
69 unsigned blocked:1; | 70 unsigned blocked:1; |
70 unsigned timer_set:1; | 71 unsigned timer_set:1; |
177 | 178 |
178 | 179 |
179 #define NGX_USE_LEVEL_EVENT 0x00010000 | 180 #define NGX_USE_LEVEL_EVENT 0x00010000 |
180 | 181 |
181 | 182 |
182 /* Event filter is deleted before closing file. Has no meaning | 183 /* Event filter is deleted before closing file. |
183 for select, poll, epoll. | 184 Has no meaning for select, poll, epoll. |
184 | 185 |
185 kqueue: kqueue deletes event filters for file that closed | 186 kqueue: kqueue deletes event filters for file that closed |
186 so we need only to delete filters in user-level batch array | 187 so we need only to delete filters in user-level batch array |
187 /dev/poll: we need to flush POLLREMOVE event before closing file */ | 188 /dev/poll: we need to flush POLLREMOVE event before closing file */ |
188 #define NGX_CLOSE_EVENT 1 | 189 #define NGX_CLOSE_EVENT 1 |
191 #if (HAVE_KQUEUE) | 192 #if (HAVE_KQUEUE) |
192 | 193 |
193 #define NGX_READ_EVENT EVFILT_READ | 194 #define NGX_READ_EVENT EVFILT_READ |
194 #define NGX_WRITE_EVENT EVFILT_WRITE | 195 #define NGX_WRITE_EVENT EVFILT_WRITE |
195 | 196 |
197 #define NGX_ENABLE_EVENT EV_ENABLE | |
198 #define NGX_DISABLE_EVENT EV_DISABLE | |
199 | |
200 /* NGX_CLOSE_EVENT is the module flag and it would not go into a kernel | |
201 so we need to choose the value that would not interfere with any existent | |
202 and future flags. kqueue has such values - EV_FLAG1, EV_EOF and EV_ERROR. | |
203 They are reserved and cleared on a kernel entrance */ | |
204 #undef NGX_CLOSE_EVENT | |
205 #define NGX_CLOSE_EVENT EV_FLAG1 | |
206 | |
196 #define NGX_LEVEL_EVENT 0 | 207 #define NGX_LEVEL_EVENT 0 |
197 #define NGX_ONESHOT_EVENT EV_ONESHOT | 208 #define NGX_ONESHOT_EVENT EV_ONESHOT |
209 #define NGX_CLEAR_EVENT EV_CLEAR | |
198 | 210 |
199 #ifndef HAVE_CLEAR_EVENT | 211 #ifndef HAVE_CLEAR_EVENT |
200 #define HAVE_CLEAR_EVENT 1 | 212 #define HAVE_CLEAR_EVENT 1 |
201 #endif | 213 #endif |
202 | 214 |
203 #if (HAVE_CLEAR_EVENT) | |
204 #define NGX_CLEAR_EVENT EV_CLEAR | |
205 #endif | |
206 | 215 |
207 #elif (HAVE_POLL) || (HAVE_DEVPOLL) | 216 #elif (HAVE_POLL) || (HAVE_DEVPOLL) |
208 | 217 |
209 #define NGX_READ_EVENT POLLIN | 218 #define NGX_READ_EVENT POLLIN |
210 #define NGX_WRITE_EVENT POLLOUT | 219 #define NGX_WRITE_EVENT POLLOUT |