maaash.jp

what I create

IO::AIOお試し

AnyEvent/Coro期がわたしにもやってきましたよ。 ファイル書き込みを非同期でやりたいのでIO::AIO試してみました。

Coro::AIO使えばcallback形式ではなく綺麗に書けるようだけれどとりあえずIO::AIOの書き方で。

結果は、↓とかってなるから非同期的な感じだなぁっていうのはわかるんですが、 AnyEventの $cv->send , $cv->recv をとっぱらっても同じように動く。 なぜ? Event loop integrationっていうのはそれが無い状態に対して、何してくれるの?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
perl try/anyevent_aio.pl
[pre] at try/anyevent_aio.pl line 5.
[aft] at try/anyevent_aio.pl line 13.
[opened]0
[opened]1
[opened]2
[opened]3
[opened]4
[opened]5
[opened]6
[opened]7
[opened]8
[opened]9
[wrote]0
[wrote]1
[wrote]2
[wrote]4
[wrote]6
[wrote]3
[wrote]7
[wrote]5
[wrote]8
[closed]9:0
[closed]8:1
[closed]7:2
[closed]6:4
[closed]5:6
[closed]4:3
[closed]3:7
[closed]2:5
[wrote]9
[closed]1:8
[closed]0:9

Comments