Coro 4.51 (Default branch) |
|
|
Coro is a package providing both low-level coroutines as well as a high-level multitasking abstraction on top of Perl. It allows you to parallelize LWP and other network protocols with ease. Unlike the so-called "Perl threads/fork emulation", they provide a real shared address space (like real threads) without the associated race conditions and performance loss, while maintaining a very low memory overhead (2-3kb/coroutine). The package comes with examples and many supporting modules.
License: Perl License
Changes:
This release is fully Perl 5.10 compatible (and lifts some of the restrictions present in older Perl releases). Coroutine memory size has been reduced to less than 3kb including stacks on 32-bit machines. A new event backend, Coro::EV, is available. Coro::Util can take advantage of EV::ADNS for asynchronous DNS resolution. Coro::Debug allows backtraces, runtime tracing, code injection, and more, and offers an interactive shell that works out of the box in event-based programs, even for non-coroutine programs. Coro::BDB supports async Berkeley DB access. Many bugs have been fixed.
|