ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libev/ev.pod
(Generate patch)

Comparing libev/ev.pod (file contents):
Revision 1.455 by root, Wed Jun 26 00:01:46 2019 UTC vs.
Revision 1.456 by root, Tue Jul 2 06:07:54 2019 UTC

1749when you rarely read from a file instead of from a socket, and want to 1749when you rarely read from a file instead of from a socket, and want to
1750reuse the same code path. 1750reuse the same code path.
1751 1751
1752=head3 The special problem of fork 1752=head3 The special problem of fork
1753 1753
1754Some backends (epoll, kqueue, probably linuxaio) do not support C<fork ()> 1754Some backends (epoll, kqueue, linuxaio, iouring) do not support C<fork ()>
1755at all or exhibit useless behaviour. Libev fully supports fork, but needs 1755at all or exhibit useless behaviour. Libev fully supports fork, but needs
1756to be told about it in the child if you want to continue to use it in the 1756to be told about it in the child if you want to continue to use it in the
1757child. 1757child.
1758 1758
1759To support fork in your child processes, you have to call C<ev_loop_fork 1759To support fork in your child processes, you have to call C<ev_loop_fork
4484 4484
4485 ev_select.c only when select backend is enabled 4485 ev_select.c only when select backend is enabled
4486 ev_poll.c only when poll backend is enabled 4486 ev_poll.c only when poll backend is enabled
4487 ev_epoll.c only when the epoll backend is enabled 4487 ev_epoll.c only when the epoll backend is enabled
4488 ev_linuxaio.c only when the linux aio backend is enabled 4488 ev_linuxaio.c only when the linux aio backend is enabled
4489 ev_iouring.c only when the linux io_uring backend is enabled
4489 ev_kqueue.c only when the kqueue backend is enabled 4490 ev_kqueue.c only when the kqueue backend is enabled
4490 ev_port.c only when the solaris port backend is enabled 4491 ev_port.c only when the solaris port backend is enabled
4491 4492
4492F<ev.c> includes the backend files directly when enabled, so you only need 4493F<ev.c> includes the backend files directly when enabled, so you only need
4493to compile this single file. 4494to compile this single file.
4686backend for GNU/Linux systems. If undefined, it will be enabled if the 4687backend for GNU/Linux systems. If undefined, it will be enabled if the
4687headers indicate GNU/Linux + Glibc 2.4 or newer, otherwise disabled. 4688headers indicate GNU/Linux + Glibc 2.4 or newer, otherwise disabled.
4688 4689
4689=item EV_USE_LINUXAIO 4690=item EV_USE_LINUXAIO
4690 4691
4692If defined to be C<1>, libev will compile in support for the Linux aio
4693backend (C<EV_USE_EPOLL> must also be enabled). If undefined, it will be
4694enabled on linux, otherwise disabled.
4695
4696=item EV_USE_IOURING
4697
4691If defined to be C<1>, libev will compile in support for the Linux 4698If defined to be C<1>, libev will compile in support for the Linux
4692aio backend. Due to it's currenbt limitations it has to be requested 4699io_uring backend (C<EV_USE_EPOLL> must also be enabled). Due to it's
4693explicitly. If undefined, it will be enabled on linux, otherwise 4700current limitations it has to be requested explicitly. If undefined, it
4694disabled. 4701will be enabled on linux, otherwise disabled.
4695 4702
4696=item EV_USE_KQUEUE 4703=item EV_USE_KQUEUE
4697 4704
4698If defined to be C<1>, libev will compile in support for the BSD style 4705If defined to be C<1>, libev will compile in support for the BSD style
4699C<kqueue>(2) backend. Its actual availability will be detected at runtime, 4706C<kqueue>(2) backend. Its actual availability will be detected at runtime,

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines