in reply to select() and sysread()
So, in some OSs, select will be transparently restarted after some signal is handled, in others it will return an error, and in perl the error is materialized as -1;
Usually you can ignore signals just running select inside a while loop:
and don't bother thinking that select is not reliable, it is, you just have to check its bit vector arguments to see which files are available for reading, writing or error... or use IO::Select::select that has a more friendly interface.1 while (($fn=select(...))>0);
|
|---|