I just wanted to throw in my two cents on this, because I haven't heard
something that I expected to hear in the whole thread on this issue....
It's been my understanding that, originally, all the forking around in
the backends was in order to implement asynchronous I/O, and the intent
of asynchronous I/O (and sane_set_io_mode()) was not to tune the scanner
speed, but to improve GUI response. Under async I/O, the GUI/frontend
would not block while waiting for the backend to deliver a full buffer
of data.
Obviously, all the extra copying that goes on with sending scanlines
from one process to another via pipes is not an efficiency gain, and
that is kind of why I haven't bothered jumping through the hoops to
add async I/O to the microtek backend. (But, my scanner also seems
to have bigger buffers than some other scanners out there -- Hah-hah!
At least they did *something* right.)
-matt m.
-- Source code, list archive, and docs: http://www.mostang.com/sane/ To unsubscribe: echo unsubscribe sane-devel | mail majordomo@mostang.com
This archive was generated by hypermail 2b29 : Mon Feb 21 2000 - 07:05:28 PST