Jak wymusić określony limit czasu w Perlu?
Używam LWP do pobierania treści ze stron internetowych i chciałbym ograniczyć czas oczekiwania na stronę.
my $ua = LWP::UserAgent->new;
$ua->timeout(10);
$ua->env_proxy;
$response = $ua->get("http://XML File");
$content = $response->decoded_content;
Problem polega na tym, że serwer czasami zakleszcza się (próbujemy dowiedzieć się, dlaczego), a żądanie nigdy się nie powiedzie. Ponieważ serwer uważa, że jest on aktywny, utrzymuje otwarte połączenie z gniazdem, więc wartość limitu czasu LWP :: UserAgent nie daje nam nic dobrego. Jaki jest najlepszy sposób wymuszenia bezwzględnego limitu czasu na żądanie?
Ilekroć limit czasu osiąga swój limit, po prostu umiera i nie mogę kontynuować skryptu! Cały ten skrypt jest w pętli, gdzie musi sekwencyjnie pobierać pliki XML. Naprawdę chciałbym właściwie obsłużyć ten limit czasu i sprawić, że skrypt będzie kontynuowany do następnego adresu. Czy ktoś wie jak to zrobić? Dzięki!!