« 2004年10月29日 | メイン | 2004年10月31日 »
2004年10月30日
RSS Robot (2)
RSS Robot の挙動がおかしいので修正してみた。おかしいと感じたのは、リクエストを送信する時のタイムアウト処理。
修正後は、以下のようにした。
foreach my $href (@href) {
eval {
$SIG{'ALRM'} = sub {
$out_sock++;
next;
};
alarm 1;
my $sock = IO::Socket::INET->new("$s{$href}:80");
if (defined $sock) {
$selecter->add($sock);
$p{$sock} = $href;
print $sock "GET /$r{$href} HTTP/1.0\r\n";
print $sock "Host: $s{$href}:80\r\n";
print $sock "\r\n";
$sock->flush();
} else {
$out_sock++;
}
alarm 0;
};
}
やばいなぁ。僕は alarm と eval の使い方をいまいち分かっていない。この書き方で正しいかどうかも微妙だし。
【関連記事】
・RSS Robot (2004年10月29日)
22:35 | コメント (0) | トラックバック | Programming
久しぶりに CCOC'S
かなり早起き。ということで、昨日(29日)の食事内容です。
夜は、遅かったので久しぶりに COCO'S に行ってきた。前広報担当者とばったり。びっくりだ。洋食が食べたくって、トリオプレートを頼んでみた。
ココス (夜)
トリオプレート, ライス