Thanks, Jason. To me, the Jetty code looks like it's doing pretty much what Stuart told me to do. Can you tell me which part exactly assumes the blocking behavior so I can relay that to the Pedestal guys?

On Tue, Sep 16, 2014 at 10:33 PM, Jason T. Greene <jgreene@redhat.com> wrote:


Sent from my iPhone

> On Sep 16, 2014, at 8:19 PM, Jim Crossley <jim@crossleys.org> wrote:
>
> Is this an async or a blocking transfer? The problem with
> > ReadableByteChannel is that it can be a blocking channel, and as a
> > result reading from it in the IO thread will result in crappy
> > performance.
>
> Because of the way they're using it (with Clojure's core.async library)
> I expect the transfer to be async, but I'll verify that with them.

I just looked at the Jetty impl, and the code assumes blocking behavior with that method. Anything using it will be blocking reads with non blocking writes.