Werden verkettete Callbacks mit demselben Ausführungskontext bei Verwendung von Scala-Futures zu synchronen Aufrufen optimiert?

Die neue Future in Scala 2.10 verwendet einen Ausführungskontext für jede Operation, bei der eine Aktion asynchron aufgerufen wird (einschließlichmap, filter, usw). Bedeutet dies, dass jede Aktion immer einzeln über den Ausführungskontext aufgerufen wird, oder ist es möglich, dass dieser Schritt optimiert wird, wenn mehrere Transformationen / Filter unter Verwendung desselben Ausführungskontexts verkettet werden?

Das heißt wenn dochf.map(...).filter(...).map(...), alle mit dem gleichen Ausführungskontext, wird dieser Aufrufexecute() einmal (weil es klug genug ist, eine synchrone Funktion aus dem oben genannten zu komponieren) oder dreimal?

Wenn die Scala Future die oben genannte Optimierung nicht durchführt, gibt es ein alternatives Framework, das für langkettige Kompositionen besser geeignet ist, das die oben genannten Optimierungen durchführt?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage