View Single Post
  #4 (permalink)  
Old 05-19-2008
benoit's Avatar
benoit benoit is offline
ZeroC Staff
 
Name: Benoit Foucher
Organization: ZeroC, Inc.
Project: Ice
 
Join Date: Feb 2003
Location: Rennes, France
Posts: 1,478
Hi,

Quote:
Originally Posted by aozarov View Post
The DirectBuffer vs non direct/heap buffer were done independently of ice.
The platform was Linux (Suse 10) and JVM is Sun JDK 1.6.
We'll check whether or not we can enable again direct buffers.

Quote:
But I see this line:
moreData = handler.read(stream);
assert(stream.pos() == stream.size());

Doesn't it suggest you are expecting to fill the buffer (which was re-allocated to the size of the payload)?
Note that discussing the Ice internals is a bit out of the scope of the free support we can provide on the forums. But to answer your question, the read() call throws Ice::TimeoutException if the read can't complete without blocking so this code is fine (with the upcoming Ice 3.3.0, this code changed a bit, read() doesn't throw anymore in this case).

Cheers,
Benoit.
Reply With Quote