ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/Coro/Coro.pm
(Generate patch)

Comparing Coro/Coro.pm (file contents):
Revision 1.298 by root, Sat May 21 16:35:38 2011 UTC vs.
Revision 1.301 by root, Sun Jul 3 10:51:40 2011 UTC

342 342
343our $idle; # idle handler 343our $idle; # idle handler
344our $main; # main coro 344our $main; # main coro
345our $current; # current coro 345our $current; # current coro
346 346
347our $VERSION = 5.372; 347our $VERSION = 6.01;
348 348
349our @EXPORT = qw(async async_pool cede schedule terminate current unblock_sub rouse_cb rouse_wait); 349our @EXPORT = qw(async async_pool cede schedule terminate current unblock_sub rouse_cb rouse_wait);
350our %EXPORT_TAGS = ( 350our %EXPORT_TAGS = (
351 prio => [qw(PRIO_MAX PRIO_HIGH PRIO_NORMAL PRIO_LOW PRIO_IDLE PRIO_MIN)], 351 prio => [qw(PRIO_MAX PRIO_HIGH PRIO_NORMAL PRIO_LOW PRIO_IDLE PRIO_MIN)],
352); 352);
766current Coro. 766current Coro.
767 767
768This is a rather brutal way to free a coro, with some limitations - if 768This is a rather brutal way to free a coro, with some limitations - if
769the thread is inside a C callback that doesn't expect to be canceled, 769the thread is inside a C callback that doesn't expect to be canceled,
770bad things can happen, or if the cancelled thread insists on running 770bad things can happen, or if the cancelled thread insists on running
771complicated cleanup handlers that rely on it'S thread context, things will 771complicated cleanup handlers that rely on its thread context, things will
772not work. 772not work.
773 773
774Any cleanup code being run (e.g. from C<guard> blocks) will be run without 774Any cleanup code being run (e.g. from C<guard> blocks) will be run without
775a thread context, and is not allowed to switch to other threads. On the 775a thread context, and is not allowed to switch to other threads. On the
776plus side, C<< ->cancel >> will always clean up the thread, no matter 776plus side, C<< ->cancel >> will always clean up the thread, no matter

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines