--- Coro/Coro.pm 2001/11/06 20:34:09 1.41 +++ Coro/Coro.pm 2003/05/27 01:15:26 1.53 @@ -21,9 +21,7 @@ =head1 DESCRIPTION This module collection manages coroutines. Coroutines are similar to -Threads but don't run in parallel. - -This module is still experimental, see the BUGS section below. +threads but don't run in parallel. In this module, coroutines are defined as "callchain + lexical variables + @_ + $_ + $@ + $^W + C stack), that is, a coroutine has it's own @@ -40,7 +38,7 @@ use base Exporter; -$VERSION = 0.52; +$VERSION = 0.7; @EXPORT = qw(async cede schedule terminate current); %EXPORT_TAGS = ( @@ -79,6 +77,8 @@ } +=over 4 + =item $main This coroutine represents the main program. @@ -138,6 +138,8 @@ # static methods. not really. +=back + =head2 STATIC METHODS Static methods are actually functions that operate on the current process only. @@ -267,7 +269,7 @@ Sets (or gets, if the argument is missing) the priority of the process. Higher priority processes get run before lower priority -processes. Priorities are smalled signed integer (currently -4 .. +3), +processes. Priorities are small signed integers (currently -4 .. +3), that you can refer to using PRIO_xxx constants (use the import tag :prio to get then): @@ -325,11 +327,13 @@ =head1 BUGS/LIMITATIONS - - you must make very sure that no coro is still active on global destruction. - very bad things might happen otherwise (usually segfaults). - - this module is not thread-safe. You must only ever use this module from - the same thread (this requirement might be loosened in the future to - allow per-thread schedulers, but Coro::State does not yet allow this). + - you must make very sure that no coro is still active on global + destruction. very bad things might happen otherwise (usually segfaults). + + - this module is not thread-safe. You should only ever use this module + from the same thread (this requirement might be losened in the future + to allow per-thread schedulers, but Coro::State does not yet allow + this). =head1 SEE ALSO