… | |
… | |
65 | technically possible. |
65 | technically possible. |
66 | |
66 | |
67 | Of course, if you want lots of policy (this can arguably be somewhat |
67 | Of course, if you want lots of policy (this can arguably be somewhat |
68 | useful) and you want to force your users to use the one and only event |
68 | useful) and you want to force your users to use the one and only event |
69 | model, you should I<not> use this module. |
69 | model, you should I<not> use this module. |
70 | |
|
|
71 | #TODO# |
|
|
72 | |
|
|
73 | Net::IRC3 |
|
|
74 | AnyEvent::HTTPD |
|
|
75 | AnyEvent::DNS |
|
|
76 | IO::AnyEvent |
|
|
77 | Net::FPing |
|
|
78 | Net::XMPP2 |
|
|
79 | Coro |
|
|
80 | |
|
|
81 | AnyEvent::IRC |
|
|
82 | AnyEvent::HTTPD |
|
|
83 | AnyEvent::DNS |
|
|
84 | AnyEvent::Handle |
|
|
85 | AnyEvent::Socket |
|
|
86 | AnyEvent::FPing |
|
|
87 | AnyEvent::XMPP |
|
|
88 | AnyEvent::SNMP |
|
|
89 | Coro |
|
|
90 | |
70 | |
91 | =head1 DESCRIPTION |
71 | =head1 DESCRIPTION |
92 | |
72 | |
93 | L<AnyEvent> provides an identical interface to multiple event loops. This |
73 | L<AnyEvent> provides an identical interface to multiple event loops. This |
94 | allows module authors to utilise an event loop without forcing module |
74 | allows module authors to utilise an event loop without forcing module |
… | |
… | |
476 | might chose the wrong one unless you load the correct one yourself. |
456 | might chose the wrong one unless you load the correct one yourself. |
477 | |
457 | |
478 | You can chose to use a rather inefficient pure-perl implementation by |
458 | You can chose to use a rather inefficient pure-perl implementation by |
479 | loading the C<AnyEvent::Impl::Perl> module, which gives you similar |
459 | loading the C<AnyEvent::Impl::Perl> module, which gives you similar |
480 | behaviour everywhere, but letting AnyEvent chose is generally better. |
460 | behaviour everywhere, but letting AnyEvent chose is generally better. |
|
|
461 | |
|
|
462 | =head1 OTHER MODULES |
|
|
463 | |
|
|
464 | The following is a non-exhaustive list of additional modules that use |
|
|
465 | AnyEvent and can therefore be mixed easily with other AnyEvent modules |
|
|
466 | in the same program. Some of the modules come with AnyEvent, some are |
|
|
467 | available via CPAN. |
|
|
468 | |
|
|
469 | =over 4 |
|
|
470 | |
|
|
471 | =item L<AnyEvent::Util> |
|
|
472 | |
|
|
473 | Contains various utility functions that replace often-used but blocking |
|
|
474 | functions such as C<inet_aton> by event-/callback-based versions. |
|
|
475 | |
|
|
476 | =item L<AnyEvent::Handle> |
|
|
477 | |
|
|
478 | Provide read and write buffers and manages watchers for reads and writes. |
|
|
479 | |
|
|
480 | =item L<AnyEvent::Socket> |
|
|
481 | |
|
|
482 | Provides a means to do non-blocking connects, accepts etc. |
|
|
483 | |
|
|
484 | =item L<AnyEvent::HTTPD> |
|
|
485 | |
|
|
486 | Provides a simple web application server framework. |
|
|
487 | |
|
|
488 | =item L<AnyEvent::DNS> |
|
|
489 | |
|
|
490 | Provides asynchronous DNS resolver capabilities, beyond what |
|
|
491 | L<AnyEvent::Util> offers. |
|
|
492 | |
|
|
493 | =item L<AnyEvent::FastPing> |
|
|
494 | |
|
|
495 | The fastest ping in the west. |
|
|
496 | |
|
|
497 | =item L<Net::IRC3> |
|
|
498 | |
|
|
499 | AnyEvent based IRC client module family. |
|
|
500 | |
|
|
501 | =item L<Net::XMPP2> |
|
|
502 | |
|
|
503 | AnyEvent based XMPP (Jabber protocol) module family. |
|
|
504 | |
|
|
505 | =item L<Net::FCP> |
|
|
506 | |
|
|
507 | AnyEvent-based implementation of the Freenet Client Protocol, birthplace |
|
|
508 | of AnyEvent. |
|
|
509 | |
|
|
510 | =item L<Event::ExecFlow> |
|
|
511 | |
|
|
512 | High level API for event-based execution flow control. |
|
|
513 | |
|
|
514 | =item L<Coro> |
|
|
515 | |
|
|
516 | Has special support for AnyEvent. |
|
|
517 | |
|
|
518 | =item L<IO::Lambda> |
|
|
519 | |
|
|
520 | The lambda approach to I/O - don't ask, look there. Can use AnyEvent. |
|
|
521 | |
|
|
522 | =item L<IO::AIO> |
|
|
523 | |
|
|
524 | Truly asynchronous I/O, should be in the toolbox of every event |
|
|
525 | programmer. Can be trivially made to use AnyEvent. |
|
|
526 | |
|
|
527 | =item L<BDB> |
|
|
528 | |
|
|
529 | Truly asynchronous Berkeley DB access. Can be trivially made to use |
|
|
530 | AnyEvent. |
|
|
531 | |
|
|
532 | =back |
481 | |
533 | |
482 | =cut |
534 | =cut |
483 | |
535 | |
484 | package AnyEvent; |
536 | package AnyEvent; |
485 | |
537 | |