… | |
… | |
3633 | Note that sending the C<ev_async> watcher is required because otherwise |
3633 | Note that sending the C<ev_async> watcher is required because otherwise |
3634 | an event loop currently blocking in the kernel will have no knowledge |
3634 | an event loop currently blocking in the kernel will have no knowledge |
3635 | about the newly added timer. By waking up the loop it will pick up any new |
3635 | about the newly added timer. By waking up the loop it will pick up any new |
3636 | watchers in the next event loop iteration. |
3636 | watchers in the next event loop iteration. |
3637 | |
3637 | |
3638 | =back |
|
|
3639 | |
|
|
3640 | |
3638 | |
3641 | =head1 LIBEVENT EMULATION |
3639 | =head1 LIBEVENT EMULATION |
3642 | |
3640 | |
3643 | Libev offers a compatibility emulation layer for libevent. It cannot |
3641 | Libev offers a compatibility emulation layer for libevent. It cannot |
3644 | emulate the internals of libevent, so here are some usage hints: |
3642 | emulate the internals of libevent, so here are some usage hints: |
… | |
… | |
4573 | And a F<ev_cpp.C> implementation file that contains libev proper and is compiled: |
4571 | And a F<ev_cpp.C> implementation file that contains libev proper and is compiled: |
4574 | |
4572 | |
4575 | #include "ev_cpp.h" |
4573 | #include "ev_cpp.h" |
4576 | #include "ev.c" |
4574 | #include "ev.c" |
4577 | |
4575 | |
4578 | =head1 INTERACTION WITH OTHER PROGRAMS OR LIBRARIES |
4576 | =head1 INTERACTION WITH OTHER PROGRAMS, LIBRARIES OR THE ENVIRONMENT |
4579 | |
4577 | |
4580 | =head2 THREADS AND COROUTINES |
4578 | =head2 THREADS AND COROUTINES |
4581 | |
4579 | |
4582 | =head3 THREADS |
4580 | =head3 THREADS |
4583 | |
4581 | |