Results 1 to 5 of 5

Thread: QueueChannel without task executor

Threaded View

  1. #1
    Join Date
    May 2009
    Location
    Rus
    Posts
    87

    Default QueueChannel without task executor

    The reference (and debugging) says that if we simply specify:
    Code:
        <si:channel id="errorChannel">
            <si:queue capacity="500"/>
        </si:channel>
    then a blocking Queue is created, but the poller will be working in the same thread as the caller. Now question - is a situation possible when caller puts something into the queue and the thread is not actually polling right after, but can be given away to do some other job? Because I have integration tests that are expecting that polling happens and message is processed further, but in 30-50% of cases this doesn't happen.
    I'm trying to figure out how SI does this putting/polling from the queue in the internals and whether described situation is possible or something else causes problems. It's not clear what thread does between putting and polling..

    Update:
    I debugged it further and it seems that QueueChannel does not even put message into those 30-50% cases into the queue.
    Last edited by ctapobep; Sep 14th, 2012 at 08:40 AM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •