From: Christoph "George" Jung
Subject: ACL 4.2 Question: Nonblocking I/O and Streams
Date: 
Message-ID: <314D2B2D.15FB7483@dfki.uni-sb.de>
Hello,

I have got a question concerning nonblocking I/O and 
bidirectional-terminal-streams in Allegro CL 4.2 . We have here a 
client/server architecture with the server on the Lisp side.
Therefore, there is a socket attached to the stream and it is set to
do nonblocking I/O. 

Communication from the client to the server works - the (listen) command
allows to check, wether the Lisp is allowed to read the stream.

The connection from the server to the client but is broken. Seems like
the
default methods under stream:stream-write-char and 
stream:stream-finish-output/stream:stream-force-output do not listen
wether they are allowed to write on the stream --- the communication
blocks.

Sometimes, it is possible to interrupt the Lisp process, to write
some character to the stream and then to force-output with the effect of
unblocking the connection again.

Do you have any idea what goes wrong in our approach ? Are there perhaps
special methods that care about non-blocking output ?

Thanks,


Christoph "George" Jung         research assistant
DFKI GmbH                       dept. computational linguistics
e-mail:                         ····@dfki.uni-sb.de
snail-mail:                     Stuhlsatzenhausweg 3, 66123 Saarbruecken
phone:                          0681-302-{5302,5303}         
public-key:                     finger ····@dfki.uni-sb.de
------------------------------------------------------------------------
"life is not impossible, but its exponentially difficult  and  sometimes  
worse"  - M.Fitting
------------------------------------------------------------------------