Mercurial > hg > nginx-quic
comparison src/event/modules/ngx_aio_module.c @ 0:4eff17414a43
nginx-0.0.1-2002-08-06-20:39:45 import
The first code that uses "ngx_" prefix, the previous one used "gx_" prefix.
At that point the code is not yet usable. The first draft ideas are dated
back to 23.10.2001.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Tue, 06 Aug 2002 16:39:45 +0000 |
parents | |
children | 62b1a364857c |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:4eff17414a43 |
---|---|
1 | |
2 int ngx_posix_aio_process_events(ngx_log_t *log) | |
3 { | |
4 unmask signal | |
5 | |
6 listen via signal; | |
7 | |
8 aio_suspend()/aiowait()/aio_waitcomplete(); | |
9 | |
10 mask signal | |
11 | |
12 if (ngx_socket_errno == NGX_EINTR) | |
13 look listen | |
14 select()/accept() nb listen sockets | |
15 else | |
16 aio | |
17 } | |
18 | |
19 int ngx_posix_aio_process_events(ngx_log_t *log) | |
20 { | |
21 unmask signal | |
22 | |
23 /* BUG: signal can be delivered before select() */ | |
24 | |
25 select(listen); | |
26 | |
27 mask signal | |
28 | |
29 if (ngx_socket_errno == NGX_EINTR) | |
30 look ready array | |
31 } | |
32 | |
33 void aio_sig_handler(int signo, siginfo_t *siginfo, void *context) | |
34 { | |
35 push siginfo->si_value.sival_ptr | |
36 } | |
37 |