Changes for version 0.15

  • IO::Async::Set subclasses and IO::Async::Buffer have now been entirely removed.
  • CHANGES:
    • Support handle-less IO::Async::Sequencer, like ::Notifier
    • Set SO_REUSEADDR on listening sockets by default
    • Allow Loop->listen() on a plain filehandle containing a socket
    • No longer any need to explcitly call Loop->enable_childmanager
  • BUGFIXES:
    • IO::Async::Loop->_adjust_timeout actually works properly
    • Notifier->close() only runs on_closed callback if it actually closed - allows for neater cross-connected Notifiers
    • Made Notifier->want_{read,write}ready more efficient
    • Notifier->close() on a child notifier works
    • Loop->listen() should take the first successful address, rather than trying them all

Modules

a collection of modules that implement asynchronous filehandle IO
facilitates the execution of child processes
perform non-blocking socket connections
execute code asynchronously in child processes
listen on network sockets for incoming connections
core loop of the IO::Async framework
a Loop using an IO::Poll object
a Loop using the select() syscall
resynchronise diverged control flow
event callbacks for a non-blocking file descriptor
performing name resolutions asynchronously
handle a serial pipeline of requests / responses (EXPERIMENTAL)
handle POSIX signals with IO::Async-based IO
read and write buffers around an IO handle
Utility functions for use in test scripts
a queue of future timed event callbacks

Provides

in lib/IO/Async/DetachedCode/FlatMarshaller.pm
in lib/IO/Async/DetachedCode/StorableMarshaller.pm
in lib/IO/Async/TimeQueue/Elem.pm