Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


Which thread should be responsible for waiting?

*Default to Common Pool, Allow User Overrides

By default, we will use a common threadpool (either one managed by Kafka, or by the JDK (like FJP.commonpool)).  However, it will be possible for a user to override the pool.


  1. Easy to implement
  2. Users have fine-grained control if they want, or they can relax and trust us


  1. Breaking API change, if only for the user override.

User-provided Threadpool

Update the API so that the user provides a threadpool, in which we do the blocking.