Changes for version 6.53 - 2018-12-16
- the autogenerated prototypes of Coro::AIO now add ";" at the end to avoid generating named unary operators and messing up parsing (mostly affects aio_mlockall 4 | 8 which was parsed as (aio_mlockall 4) | 8).
- do not use a prototype for select in Coro::Select, as CORE::select also doesn't have one.
- Coro - the only real threads in perl
- Coro::AIO - truly asynchronous file and directory I/O
- Coro::AnyEvent - integrate threads into AnyEvent
- Coro::BDB - truly asynchronous bdb access
- Coro::Channel - message queues
- Coro::Debug - various functions that help debugging Coro programs
- Coro::Handle - non-blocking I/O with a blocking interface.
- Coro::LWP - make LWP non-blocking - as much as possible
- Coro::MakeMaker - MakeMaker glue for the XS-level Coro API
- Coro::RWLock - reader/write locks
- Coro::Select - a (slow but coro-aware) replacement for CORE::select
- Coro::Semaphore - counting semaphores
- Coro::SemaphoreSet - efficient set of counting semaphores
- Coro::Signal - thread signals (binary semaphores)
- Coro::Socket - non-blocking socket-I/O
- Coro::Specific - manage coroutine-specific variables.
- Coro::State - first class continuations
- Coro::Storable - offer a more fine-grained Storable interface
- Coro::Timer - timers and timeouts, independent of any event loop
- Coro::Util - various utility functions.
- Coro::EV - do events the coro-way, with EV
- Coro::Event - do events the coro-way, with Event