stdin set to nonblocking mode
Simon Marlow
simonmar at microsoft.com
Thu Aug 11 05:20:03 EDT 2005
On 11 August 2005 01:18, John Meacham wrote:
> Why do we set file descriptors to nonblocking mode anyway if they are
> waited on by a select. there shouldn't be a need to use both
It avoids an extra system call per read(), i.e. a single read() instead
of select() + read(). And there's a slight chance of a race between the
select() and read() calls, if some other thread or process is reading
from the same descriptor. With non-blocking read(), this isn't an
issue.
The overhead of the extra syscall is probably a non-issue, but the race
is mildly worrying.
Cheers,
Simon
More information about the Glasgow-haskell-bugs
mailing list