1AnyEvent::Impl::EventLiUbs(e3r)Contributed Perl DocumentAantyiEovnent::Impl::EventLib(3)
2
3
4

NAME

6       AnyEvent::Impl::EventLib - AnyEvent adaptor for Event::Lib
7

SYNOPSIS

9          use AnyEvent;
10          use Event::Lib;
11
12          # this module gets loaded automatically as required
13

DESCRIPTION

15       This module provides transparent support for AnyEvent. You don't have
16       to do anything to make Event work with AnyEvent except by loading
17       Event::Lib before creating the first AnyEvent watcher.
18
19       Note: the AnyEvent author has not found recent releases of Event::Lib
20       to be even remotely working (not even the examples from the manpage or
21       the testsuite work), so this event backend should be avoided (or
22       somebody should step up and maintain it, hint, hint).
23
24       The Event::Lib module suffers from the same limitations and bugs as
25       libevent, most notably it kills already-installed watchers on a file
26       descriptor and it is unable to support fork. These are not fatal
27       issues, and are worked-around by this module, but the Event::Lib perl
28       module itself has many additional bugs such as taking references to
29       file handles and callbacks instead of making a copy or freeing still-
30       allocated scalars, causing memory corruption and random crashes. Only
31       Tk rivals it in its brokenness.
32
33       This adaptor module employs the same workaround around the watcher
34       problems as Tk and should therefore be avoided. (This was done for
35       simplicity, one could in theory work around the problems with lower
36       overhead by managing our own watchers).
37
38       Event::Lib also leaks file handles and memory and tends to just exit on
39       problems.
40
41       It also doesn't work around the Windows bug of not signalling TCP
42       connection failures.
43
44       It also doesn't work with many special devices on Linux (/dev/random
45       works, /dev/urandom fails, /dev/tty works, /dev/null fails and so on).
46
47       Event::Lib does not support idle watchers. They could be emulated using
48       low-priority timers but as the priority range (and availability) is not
49       queryable nor guaranteed, and the default priority is likely the lowest
50       one, this module cannot use them.
51
52       Avoid Event::Lib if you can.
53

SEE ALSO

55       AnyEvent, Event::Lib.
56

AUTHOR

58        Marc Lehmann <schmorp@schmorp.de>
59        http://anyevent.schmorp.de
60
61
62
63perl v5.32.1                      2021-01-26       AnyEvent::Impl::EventLib(3)
Impressum