timeout pri vstupu

Jiri Polcar polcar na physics.muni.cz
Pondělí Říjen 14 16:14:16 MEST 2002


On Mon, Oct 14, 2002 at 04:09:40PM +0200, Vaclav Vobornik wrote:
> Ahoj,
> da se nejak nastavit cas, po ktery bude program cekat na vstup ze zarizeni?
> 
> Konkretne:
> 
> $input=<TTYS0>;
> 
> ..v pripade, ze z jakehokoliv duvodu neprijde z externiho zarizeni odpoved,
> program se naveky zastavi...
> Lze nekde nastavit timeout??
> 

Co treba takto:

---script---
$SIG{ALRM} = \&timed_out;

eval {
    alarm (10);
    $buf = <>;
    alarm(0);           # Cancel the pending alarm if user responds.
};

if ($@ =~ /GOT TIRED OF WAITING/) {
    print "Timed out. Proceeding with default\n";
    ....
}

sub timed_out {
    die "GOT TIRED OF WAITING";
}
---script---


-- 
JP


Další informace o konferenci Perl