
24 Jan
2005
24 Jan
'05
3:08 p.m.
Ketil Malde wrote:
The point is that the Unix documentation does not consider the short pause as data is read off your hard drive to be blocking. So that's why select will always report that data is available when you use it with a file handle.
Isn't this also for historic reasons?
Partly.
But I think that it's also because this functionality wasn't intended
for the purpose which is being discussed, i.e. enabling a process to
obtain maximal CPU utilisation.
For that purpose, explicit overlapped I/O (in all forms) can only ever
be a partial solution, because you still have the issue that "memory"
(i.e. code/data/stack segments) is demand-paged. The only solution
there is multiple threads.
--
Glynn Clements