The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

Changes for version 0.800 - 2021-11-11

  • CHANGES
    • Bumped up to three-digit minor version number
    • Added IO::Async::OS->signum2name
    • Implement Future::IO->waitpid API
    • Skip the `spawn` Routine model if POSIX fork() is not available
    • Replace getaddrinfo / getnameinfo with virtual mocking functions for unit-testing the resolve, so as not to rely on local platform resolver behaviours

Modules

implement Future::IO using IO::Async
Asynchronous event-driven programming
pass values into or out from an IO::Async::Routine
debugging control and support for IO::Async
watch a file for changes
read the tail of a file
call a function asynchronously
use Future with IO::Async
event callbacks for a non-blocking file descriptor
listen on network sockets for incoming connections
core loop of the IO::Async framework
use IO::Async with poll(2)
use IO::Async with select(2)
acceptance testing for IO::Async::Loop subclasses
report metrics about IO::Async to Metrics::Any
base class for IO::Async event objects
operating system abstractions for IO::Async
operating system abstractions on MSWin32 for IO::Async
operating system abstractions on cygwin for IO::Async
operating system abstractions on Linux for IO::Async
event callback on exit of a child process
start and manage a child process
base class for transport-based protocols
stream-based protocols using lines of text
base class for stream-based protocols
performing name resolutions asynchronously
execute code in an independent sub-process or thread
event callback on receipt of a POSIX signal
event callbacks and send buffering for a socket filehandle
event callbacks and write bufering for a stream filehandle
utility functions for use in test scripts
base class for Notifiers that use timed delays
event callback at a fixed future time
event callback after a fixed delay
event callback at regular intervals

Provides

in lib/IO/Async/Internals/ChildManager.pm
in lib/IO/Async/Internals/FunctionWorker.pm