Perl - 子プロセスにSTDINの内容を振り分ける
STDINの内容を子プロセスたちのSTDINへ順番に振り分けるスクリプト。
使いどころの例:ダウンロード並列化
url.txt にダウンロードしたい url を一行ごとに書いておく。例えば
http://www.example.com/index.html http://example.co.jp/image.jpg http://www.example.com/picture.png
それで以下のように実行。
cat url.txt | ./round_robin_stdin.pl --parallel 3 -- perl -MLWP::Simple -MDigest::MD5=md5_hex -ne 'chomp; getstore($_, md5_hex($_));'
...それって xargs とか AnyEvent のほうが....
code
TODO
シグナル処理