Mercurial > hg > nginx
comparison src/event/modules/ngx_aio_module.c @ 5:62b1a364857c
nginx-0.0.1-2002-08-23-20:14:30 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Fri, 23 Aug 2002 16:14:30 +0000 |
parents | 4eff17414a43 |
children | 669801705ab1 |
comparison
equal
deleted
inserted
replaced
4:c5f071d376e5 | 5:62b1a364857c |
---|---|
1 | 1 |
2 int ngx_posix_aio_process_events(ngx_log_t *log) | 2 int ngx_posix_aio_process_events(ngx_log_t *log) |
3 { | 3 { |
4 unmask signal | 4 unmask signal |
5 | 5 |
6 listen via signal; | 6 listen via SIGIO; |
7 | 7 |
8 aio_suspend()/aiowait()/aio_waitcomplete(); | 8 /* BUG: SIGIO can be delivered before aio_*() */ |
9 | |
10 aio_suspend()/aiowait()/aio_waitcomplete() with timeout | |
9 | 11 |
10 mask signal | 12 mask signal |
11 | 13 |
12 if (ngx_socket_errno == NGX_EINTR) | 14 if (ngx_socket_errno == NGX_EINTR) |
13 look listen | 15 look listen |
18 | 20 |
19 int ngx_posix_aio_process_events(ngx_log_t *log) | 21 int ngx_posix_aio_process_events(ngx_log_t *log) |
20 { | 22 { |
21 unmask signal | 23 unmask signal |
22 | 24 |
23 /* BUG: signal can be delivered before select() */ | 25 /* BUG: AIO signal can be delivered before select() */ |
24 | 26 |
25 select(listen); | 27 select(listen); |
26 | 28 |
27 mask signal | 29 mask signal |
28 | 30 |