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

Comparing cvsroot/Coro/eg/bench (file contents):
Revision 1.16 by root, Fri Sep 21 02:01:13 2007 UTC vs.
Revision 1.22 by root, Sat Jun 11 13:49:00 2011 UTC

25 cede; cede; cede; cede; cede; 25 cede; cede; cede; cede; cede;
26 } 26 }
27}; 27};
28 28
29cede; 29cede;
30
31$main = $Coro::main;
32 30
33*transfer = \&Coro::State::transfer; 31*transfer = \&Coro::State::transfer;
34 32
35sub doit0 { 33sub doit0 {
36 while() { 34 while() {
58 56
59$c1 = new Coro::State sub { 57$c1 = new Coro::State sub {
60 doit1(1,2,3,4,5,6,7,8,9); 58 doit1(1,2,3,4,5,6,7,8,9);
61}; 59};
62 60
63$c0->save (0); 61#$c0->save (0);
64$c1->save (-1); 62#$c1->save (-1);
65 63
66transfer($main, $c0); 64#Coro::State::enable_times 1;
67transfer($main, $c1); 65#use Coro::Debug; Coro::Debug::command "ps";#d#
66#(async {
67 $main = $Coro::current;
68 68
69 transfer($main, $c0);
70 transfer($main, $c1);
71
69timethese 1000000, { 72 timethese 5000000, {
70 function => 'a(5); a(6)', 73 function => 'a(5); a(6)',
71 method => '$a->b(5); $a->b(6)', 74 method => '$a->b(5); $a->b(6)',
72 cede => 'cede', 75 cede => 'cede',
73 transfer0 => 'transfer($main, $c0)', 76 transfer0 => 'transfer($main, $c0)',
74 transfer1 => 'transfer($main, $c1)', 77 transfer1 => 'transfer($main, $c1)',
75}; 78 };
79#})->join;
80#use Coro::Debug; Coro::Debug::command "ps";#d#
76 81
77 82
78

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines