Yes, I know about SEDA, and use it quite a bit, but its not really what I'm after here. I'm wanting to pass an Iterable such as a Blocking Queue directly between processors.

Tim

On 28/11/2014 02:44, today wrote:
Tim, the SEDA component is designed to produce/consume messages quickly and
provides a queue (BlockingQueue) in between resources to buffer the flow and
provides options such as max size and blockWhenFull to limit memory usage
and slow a producer as needed, etc...

http://camel.apache.org/seda.htm


Tim Dudgeon wrote
I've got various cases where I have large number of results (POJOs) and
want to stream them so that:
1. initial results are returned immediately
2. memory utilisation is kept under control

I was expecting to use something like using a BlockingQueue [1] but
according to the Javadocs:

  > A BlockingQueue does not intrinsically support any kind of "close" or
"shutdown" operation to indicate that no more items will be added.

which seems to be essential and I can't find any obvious way to handle
this.
Am I missing something obvious here?

[1]
https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/BlockingQueue.html


Tim




-----
Ben O'Day
IT Consultant -http://consulting-notes.com

--
View this message in context: 
http://camel.465427.n5.nabble.com/general-approach-to-streaming-tp5759483p5759732.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to