1 | $|=1; |
1 | $|=1; |
2 | print "1..10\n"; |
2 | print "1..18\n"; |
3 | |
3 | |
4 | no warnings; |
4 | no warnings; |
5 | use Coro; |
5 | use Coro; |
6 | use Coro::Signal; |
6 | use Coro::Signal; |
7 | |
7 | |
… | |
… | |
52 | |
52 | |
53 | $sig->broadcast; |
53 | $sig->broadcast; |
54 | print +(Coro::Semaphore::count $sig) == 0 ? "" : "not ", "ok 8\n"; |
54 | print +(Coro::Semaphore::count $sig) == 0 ? "" : "not ", "ok 8\n"; |
55 | cede; |
55 | cede; |
56 | |
56 | |
|
|
57 | $sig->wait (sub { print "ok 12\n" }); |
|
|
58 | print "ok 10\n"; |
|
|
59 | |
|
|
60 | print "ok 11\n"; |
|
|
61 | |
|
|
62 | $sig->send; |
|
|
63 | print "ok 13\n"; |
|
|
64 | cede; |
|
|
65 | |
|
|
66 | print "ok 14\n"; |
|
|
67 | $sig->send; |
|
|
68 | print "ok 15\n"; |
|
|
69 | |
|
|
70 | $sig->wait (sub { print "ok 16\n" }); |
|
|
71 | print "ok 17\n"; |
|
|
72 | |
57 | print +(Coro::Semaphore::count $sig) == 0 ? "" : "not ", "ok 10\n"; |
73 | print +(Coro::Semaphore::count $sig) == 0 ? "" : "not ", "ok 18\n"; |
58 | } |
74 | } |
59 | |
75 | |