--- Coro/Changes 2008/11/17 07:19:15 1.425 +++ Coro/Changes 2008/11/18 08:59:45 1.428 @@ -6,10 +6,9 @@ but very lacking in others (higher level ipc)). TODO: testcancel -TODO: aio -TODO: Coro::Semaphore -TODO: trow disturbs cleanup path inside pp_slf? -TODO: throw special-case in transfer? +TODO: guard as SLF - to avoid deadlocks. + - avoid deadlock in Coro::Channel if maxsize == 1 (Richard Hundt). + 5.0 - NEW ARCHITECTURE: use the latest 4.x version if you experience stability issues. @@ -21,9 +20,9 @@ was waiting for a semaphore that was just becoming available would cause a deadlock (semaphore would get into a state where it was available but waiters were waiting(. - - avoid deadlock in Coro::Channel if maxsize == 1 (Richard Hundt). - perl's process emulation is now not even theoretically supported anymore. + - use named constants in Coro::Channel (Richard Hundt). - directly patch the entersub opcode calling SLF functions (cede, transfer and so on). this does speed up context switching, but more importanly, it frees us from the hardcoded behaviour of @@ -41,8 +40,8 @@ and were annoying to support anyways :) - used new SLF interface to massively speed up Coro::Semaphore by a factor of three. - - used new SLF interface to speed up Coro::AIO by roughly 400% and - reduce its memory usage considerably. + - used new SLF interface to speed up Coro::AIO by roughly a factor of + four and reduce its memory usage considerably. - forgot to include Coro/libcoro/README in the dist for all these years. - work around a freebsd pthreads bug (manual testcancel is required as pthread_cond_wait isn't a cancellation point on freebsd).