Marc A. Lehmann
/
Coro-3.0
-
- Browse (raw)
-
Changes
-
Issues
(6)
-
3 (7 reviews)
-
Testers
-
Kwalitee
- License: unknown
-
-
MOBI | EPUB
-
Download (58.38Kb)
-
MetaCPAN Explorer
-
Rate this distribution
-
Permissions
-
Subscribe to distribution
-
-
-
-
-
-
This version
-
Latest version
-
This version
-
Latest version
Changes for version 3.0 - 2006-12-03
- the "FINALLY COMPLETELY STABLE" release (coming soon: the "FAMOUS LAST WORDS" release).
- implement a new stack sharing algorithm, which uses a stack pool (size currently hardcoded).
- make stack sharing mandatory (it no longer uses a heuristic).
- eval/die no longer cause weird problems under heavy use.
- Coro::Event could cause livelocks if it was used but no Coro::Event watchers were used.
- Coro::Event now uses asynccheck as prepare does not check for changed watchers.
- Coro::Event allows multiple waiting coros and will wake up one per event.
- Coro::Event should be cleaner and more efficient now.
- new utility function Coro::unblock_sub.
- document the sad fact that Event is no longer reentrant.
- putting a coroutine into the ready queue twice could under some circumstances lead to stack corruption.
- minor incompatibility: subclassing Coro::State is supported directly now without going through a _coro_state member.
- state/coro switching is much faster now.
- very minor optimisations and code/documentation cleanup.
- avoid problems due to compiler inlining.
- removed timers from Coro::Timer -> use AnyEvent instead.
- replaced Coro::idle coroutine by (cleaner) idle handler.
- updated to newest libcoro.
- implement enhanced support for valgrind.
- implement is_ready and return value for ready.
- removed Coro::Cont, it was a misnomer (it's generators), and it was somewhat annoying to get it right. Will come back if somebody asks for it :)
- many ->wait methods and Coro::Event could return spuriously without the event having happened.