From: Sam S. <sd...@gn...> - 2002-09-27 15:13:00
|
> * In message <DFD875E85664D3118FA6080006277DE706A84C80@U8PN2.blf01.telekom.de> > * On the subject of "[clisp-list] TCP-based Network Server in CLISP" > * Sent on Fri, 27 Sep 2002 15:41:55 +0200 > * Honorable "Hoehle, Joerg-Cyril" <Joe...@t-...> writes: > > May I suggest something simple, like what I believe many other > programmers in other Lisps or languages do and which is portable for > sockets: in non-blocking mode, you can read _as much as is available_ > using a single read(). I think you can also write() a large number, > and the OS will tell you that it couldn't write all and tell you how > much it actually wrote. It's then up to you/the application to deal > with sending the rest at a later time. > > So this E-Mail is a feature request for Lisp-level access to a single > OS-level read() and write. READ-SOME-BYTE/SEQUENCE et al. right now, _buffered_ stream _input_ works as you describe (a single read). output works the same way for buffered and unbuffered streams (this can be fixed). So, Dave, could you please try buffered streams? (you will need the latest CLISP, of course). -- Sam Steingold (http://www.podval.org/~sds) running RedHat7.3 GNU/Linux <http://www.camera.org> <http://www.iris.org.il> <http://www.memri.org/> <http://www.mideasttruth.com/> <http://www.palestine-central.com/links.html> Two wrongs don't make a right, but three rights make a left. |