title: In which thread do CompletableFuture's completion handlers execute?
body: <p>I have a question about CompletableFuture method:</p>
  <pre><code>public &lt;U&gt; CompletableFuture&lt;U&gt; thenApply(Function&lt;? super T, ? extends U&gt; fn)
  </code></pre>
  <p>The thing is the JavaDoc says just this:</p>
  <blockquote>
  <p>Returns a new CompletionStage that, when this stage completes
  normally, is executed with this stage's result as the argument to the
  supplied function. See the CompletionStage documentation for rules
  covering exceptional completion.</p>
  </blockquote>
  <p>What about threading? In which thread is this going to be executed? What if the future is completed by a thread pool?</p>