Uploaded image for project: 'CXF'
  1. CXF
  2. CXF-8239

Why AutomaticWorkQueue is used when providing an executor on asynchronous case

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Information Provided
    • 3.3.5
    • None
    • Core
    • None
    • Unknown

    Description

      When looking on introducing a dedicated Executor when performing asynchronous calls, we see that in the HttpConduit#WrappedOutputStream base class, when the handleResponseOnWorkqueue method is called, which seem to be the method call on all conduit implementations (synchronous URLConnectionHTTPConduit and AsyncHTTPConduit) when handling the response of asynchronous calls, if the forceWQ flag is used, even if we have set a dedicated TaskExecutor, we will still execute something in the Workqueue. So far with the name of the variable it makes sense, but why forcing it in case of async replies on the  AsyncHTTPConduit#setHttpResponse ? This forces us to execute the call to our executor in the work queue thread instead of directly in the I/O dispatcher thread.

       

      Thanks for feedback!

      Baptiste

      Attachments

        Activity

          People

            Unassigned Unassigned
            baiglin Baptiste AIGLIN
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: