Trustin Lee wrote:
> 2005/12/12, Niklas Therning <[EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>>:
> 
>     If my theory is correct the remedy would be to remove the while-loop and
>     instead add the InputStream you're reading from as a session attribute.
>     Then override messageSent() in your IoFilter and each time it gets
>     called you write the next 4K of data from the InputStream. This way you
>     write data in chunks of 4K and you only send the next 4K once the
>     previous 4K has been sent.
> 
>     Once all the data from the InputStream has been written you forward the
>     messageSent() call to the IoHandler with the original InputStream as
>     message.
> 
>     If you try this out and it works I think we could add this filter to
>     MINA if you are willing to share it.
> 
>  
> My suggestion is easy to code, but it will make you to waste some
> threads.  Please try mine first and then try Niklas's suggestion.  His
> solution is also correct, and more efficient.


Thanks Trustin, I didn't think of that. Johannes, you should definitely
try Trustin's suggestion first and see if that gets rid of the memory
problem. It basically does what I suggested and is a whole lot simpler
to try out but it will waste precious threads.

/Niklas

Reply via email to