Hi Alex,

> In addition, I sometimes use the 'alarm' function (in combination
> with 'catch', 'throw' and 'finally') to ensure that no operation
> takes too long.

I don't think alarm is good enough though.  It is good for timeouts
but not for schedulling.

BTW: I found a typo in http://www.software-lab.de/refD.html#alarm
which should be http://www.software-lab.de/refA.html#alarm

> Not necessarily. If we use the select() mechanism provided by '*Run'
> and 'task', you can make input operations like 'listen', 'accept',
> 'read', 'rd' etc. non-blocking.

How would this work, could you provide a "simple" example?

How would I know that 'read' does not have data available, or only
part of the data is available?  If I just use alarm (or maybe
something with smaller granularity) I would be wasting precious time
on timeouts.



Reply via email to