Btw, I think i just tweak the ExecutorFilter to always spawn a new thread for each message that arrived. It work fine, but Is not a cleanest approach.
Thanks, On Wed, Jul 16, 2008 at 6:48 PM, Johny Kadarisman <[EMAIL PROTECTED]> wrote: > Thanks Peter, > > Now it make sense. Is there other filter that not implementing this > blocking mechanism. I have slightly different uses. Which each message > should be process independently in a different thread even if this come > from the same connection. > > > On Wed, Jun 11, 2008 at 11:41 AM, peter royal <[EMAIL PROTECTED]> > wrote: > >> On Jun 5, 2008, at 11:02 AM, Johny Kadarisman wrote: >> >>> In my client implementation, I set manual threading model, and insert >>> executorFilter() in my socketConnector config. On certain condition, in >>> my >>> handler, I will block in 'ArrayBlockingQueue'. during this situation, I >>> don't see IoProcessor creating a new handler thread to process a new >>> message >>> coming from server. I can see the processor receive the new message >>> coming >>> from server on LoggingFilter. >>> >>> If the blocking code is commented out, the new handler thread will be >>> created. Is IoHandler should only run on one thread? Did I do something >>> wrong? >>> >> >> Is this all on the same connection? >> >> The standard way an ExecutorFilter works is to process all data for a >> given connection in order. So if you block in the IOHandler after the >> ExecutorFilter for a given connection, you won't see subsequent messages >> processed until the previous message is complete. Make sense? >> >> -pete >> >> >> -- >> (peter.royal|osi)@pobox.com - http://fotap.org/~osi<http://fotap.org/%7Eosi> >> >> >
