Why are Futures within Futures running sequentially when started on Akka Dispatcher
问题 We observed a strange behavior when we tried to start a number of futures from within an actor's receive method. If we use our configured dispatchers as ExecutionContext, the futures run on the same thread and sequentially. If we use ExecutionContext.Implicits.global, the futures run in parallel as expected. We boiled down the code to the following example (a more complete example is below): implicit val ec = context.getDispatcher Future{ doWork() } // <-- all running parallel Future{ doWork(