>> Yes.  Calling sysread() gets you what's ready to be read UP TO the 
> amount of data you specify.  The rest probably just wasn't available 
> yet.  There could be a lot of reasons for this:  network lag, 
> operating 
> system buffers, etc.

Thanks. I tried turning off buffering on both ends, that did not work. 

> 
> You're second example is line oriented.  It returns when it has 
> collected a whole line.  That's a big difference.
> 
> If you can get by with the line oriented reads and writes, by 
> all means 
> use them and save yourself a lot of pain.  That's rare in networking 
> though, in my experience.

I can live with reading line by line for now, but down the line....

> 
> If you really do need sysread(), you'll need to check it with 
> select() 
> to see when data is available and buffer your reads until you 
> know you 
> have an entire message.

select(), I was afraid somebody would mention that :)
 
> Hope that helps.

Yes, thanks.



-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to