ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cvsroot/Coro/eg/prodcons1
(Generate patch)

Comparing cvsroot/Coro/eg/prodcons1 (file contents):
Revision 1.1 by root, Tue Jul 10 01:43:21 2001 UTC vs.
Revision 1.3 by root, Tue Jul 17 00:24:15 2001 UTC

4# one process produces items, send s a signal. 4# one process produces items, send s a signal.
5# another process waits for that signal and 5# another process waits for that signal and
6# consumed the item. 6# consumed the item.
7 7
8use Coro; 8use Coro;
9use Coro::Process;
10use Coro::Signal; 9use Coro::Signal;
11 10
12my $produced = new Coro::Signal; 11my $produced = new Coro::Signal;
13my $consumed = new Coro::Signal; 12my $consumed = new Coro::Signal;
14my $finished = new Coro::Signal; 13my $finished = new Coro::Signal;
19 $produced->send; 18 $produced->send;
20 $consumed->wait; 19 $consumed->wait;
21 } 20 }
22 print "work done\n"; 21 print "work done\n";
23 $finished->send; 22 $finished->send;
24 $idle;
25}; 23};
26 24
27async { 25async {
28 while () { 26 while () {
29 $produced->wait; 27 $produced->wait;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines