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

Comparing Coro/Coro.pm (file contents):
Revision 1.42 by root, Tue Nov 6 20:37:20 2001 UTC vs.
Revision 1.53 by root, Tue May 27 01:15:26 2003 UTC

36 36
37use Coro::State; 37use Coro::State;
38 38
39use base Exporter; 39use base Exporter;
40 40
41$VERSION = 0.52; 41$VERSION = 0.7;
42 42
43@EXPORT = qw(async cede schedule terminate current); 43@EXPORT = qw(async cede schedule terminate current);
44%EXPORT_TAGS = ( 44%EXPORT_TAGS = (
45 prio => [qw(PRIO_MAX PRIO_HIGH PRIO_NORMAL PRIO_LOW PRIO_IDLE PRIO_MIN)], 45 prio => [qw(PRIO_MAX PRIO_HIGH PRIO_NORMAL PRIO_LOW PRIO_IDLE PRIO_MIN)],
46); 46);
75 }; 75 };
76 } 76 }
77 77
78} 78}
79 79
80=over 4
81
80=item $main 82=item $main
81 83
82This coroutine represents the main program. 84This coroutine represents the main program.
83 85
84=cut 86=cut
134 } 136 }
135}; 137};
136 138
137# static methods. not really. 139# static methods. not really.
138 140
141=back
142
139=head2 STATIC METHODS 143=head2 STATIC METHODS
140 144
141Static methods are actually functions that operate on the current process only. 145Static methods are actually functions that operate on the current process only.
142 146
143=over 4 147=over 4
263 267
264=item $oldprio = $process->prio($newprio) 268=item $oldprio = $process->prio($newprio)
265 269
266Sets (or gets, if the argument is missing) the priority of the 270Sets (or gets, if the argument is missing) the priority of the
267process. Higher priority processes get run before lower priority 271process. Higher priority processes get run before lower priority
268processes. Priorities are smalled signed integer (currently -4 .. +3), 272processes. Priorities are small signed integers (currently -4 .. +3),
269that you can refer to using PRIO_xxx constants (use the import tag :prio 273that you can refer to using PRIO_xxx constants (use the import tag :prio
270to get then): 274to get then):
271 275
272 PRIO_MAX > PRIO_HIGH > PRIO_NORMAL > PRIO_LOW > PRIO_IDLE > PRIO_MIN 276 PRIO_MAX > PRIO_HIGH > PRIO_NORMAL > PRIO_LOW > PRIO_IDLE > PRIO_MIN
273 3 > 1 > 0 > -1 > -3 > -4 277 3 > 1 > 0 > -1 > -3 > -4
321 325
3221; 3261;
323 327
324=head1 BUGS/LIMITATIONS 328=head1 BUGS/LIMITATIONS
325 329
326 - you must make very sure that no coro is still active on global destruction. 330 - you must make very sure that no coro is still active on global
327 very bad things might happen otherwise (usually segfaults). 331 destruction. very bad things might happen otherwise (usually segfaults).
332
328 - this module is not thread-safe. You should only ever use this module from 333 - this module is not thread-safe. You should only ever use this module
329 the same thread (this requirement might be loosened in the future to 334 from the same thread (this requirement might be losened in the future
330 allow per-thread schedulers, but Coro::State does not yet allow this). 335 to allow per-thread schedulers, but Coro::State does not yet allow
336 this).
331 337
332=head1 SEE ALSO 338=head1 SEE ALSO
333 339
334L<Coro::Channel>, L<Coro::Cont>, L<Coro::Specific>, L<Coro::Semaphore>, 340L<Coro::Channel>, L<Coro::Cont>, L<Coro::Specific>, L<Coro::Semaphore>,
335L<Coro::Signal>, L<Coro::State>, L<Coro::Event>, L<Coro::RWLock>, 341L<Coro::Signal>, L<Coro::State>, L<Coro::Event>, L<Coro::RWLock>,

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines