AnyEvent provides an identical interface to
multiple event loops. This allows module authors
to utilize an event loop without forcing module
users to use the same event loop (as only a single
event loop can coexist peacefully at any one
time). The interface itself is vaguely similar but
not identical to the Event module. On the first
call of any method, the module tries to detect the
currently loaded event loop by probing for an
already-loaded event loop, such as Glib or Event.
The first one found is used. If none is found, the
module tries to load an event module, and failing that, it will fall back to an optimized pure Perl implementation.