Changes for version 5.2 - 2009-10-04

  • Coro::Storable destroyed the prototypes of the functions it wrapped.
  • export rouse_cb and rouse_wait by default now.
  • fix various prototype mismatches in Coro::AnyEvent and Coro::Handle.
  • new method $state->swap_sv.
  • added section on "windows process emulation" to the manpage, after a not-so-fruitful (nor-friendly) "discussion" with chip salzenberg (discussion implies arguments, but his only arguments were ad-hominems, one wonders why he started it in the first place). I hope this explains it well enough for him to understand, and maybe well enough for others to understand.
  • use common::sense everywhere now.
  • idle callbacks are no longer supported, use idle coros instead.
  • print a thread listing when a deadlock is detected.

Documentation

Modules

the only real threads in perl
truly asynchronous file and directory I/O
integrate threads into AnyEvent
truly asynchronous bdb access
message queues
various functions that help debugging Coro programs
non-blocking I/O with a blocking interface.
make LWP non-blocking - as much as possible
MakeMaker glue for the XS-level Coro API
reader/write locks
a (slow but coro-aware) replacement for CORE::select
counting semaphores
efficient set of counting semaphores
thread signals (binary semaphores)
non-blocking socket-I/O
manage coroutine-specific variables.
first class continuations
offer a more fine-grained Storable interface
timers and timeouts, independent of any event loop
various utility functions.
do events the coro-way, with EV
do events the coro-way, with Event

Provides

in Coro/State.pm
in Coro/AnyEvent.pm
in Coro/Handle.pm
in Coro/LWP.pm
in Coro/Timer.pm