| @@ -1,19 +1,21 @@ | | | @@ -1,19 +1,21 @@ |
1 | The libevent API provides a mechanism to execute a callback function when a | | 1 | The libevent API provides a mechanism to execute a callback function |
2 | specific event occurs on a file descriptor or after a timeout has been | | 2 | when a specific event occurs on a file descriptor or after a timeout |
3 | reached. Furthermore, libevent also support callbacks due to signals or | | 3 | has been reached. Furthermore, libevent also support callbacks due |
4 | regular timeouts. | | 4 | to signals or regular timeouts. |
5 | | | 5 | |
6 | libevent is meant to replace the asynchronous event loop found in event | | 6 | libevent is meant to replace the asynchronous event loop found in |
7 | driven network servers. An application just needs to call event_dispatch() | | 7 | event driven network servers. An application just needs to call |
8 | and can then add or remove events dynamically without having to change the | | 8 | event_dispatch() and can then add or remove events dynamically |
9 | event loop. | | 9 | without having to change the event loop. |
10 | | | 10 | |
11 | Currently, libevent supports /dev/poll, kqueue(2), event ports, select(2), | | 11 | Currently, libevent supports /dev/poll, kqueue(2), event ports, |
12 | poll(2), and epoll(4). The internal event mechanism is completely independent | | 12 | select(2), poll(2), and epoll(4). The internal event mechanism is |
13 | of the exposed event API, and a simple update of libevent can provide new | | 13 | completely independent of the exposed event API, and a simple update |
14 | functionality without having to redesign the applications. | | 14 | of libevent can provide new functionality without having to redesign |
| | | 15 | the applications. |
15 | | | 16 | |
16 | Libevent additionally provides a sophisticated framework for buffered network | | 17 | Libevent additionally provides a sophisticated framework for buffered |
17 | IO, with support for sockets, filters, rate-limiting, SSL, zero-copy file | | 18 | network IO, with support for sockets, filters, rate-limiting, SSL, |
18 | transmission, and IOCP. Libevent includes support for several useful protocols, | | 19 | zero-copy file transmission, and IOCP. Libevent includes support |
19 | including DNS, HTTP, and a minimal RPC framework. | | 20 | for several useful protocols, including DNS, HTTP, and a minimal |
| | | 21 | RPC framework. |