Могу ли я без боязни построить сеть future которые зависят от друг друга, тоесть в первой строчке future ожидает завершения набора других future (Set). Ключевые слова «в первой строчке». Так как любой Executor - это пул потоков плюс очередь, то может ли так случиться что в пуле потоков окажутся потоки, которые ожидают свои dependency, а в очереди будут сидеть задачи для удовлетворения этих зависимостей.
Может просто замутить бесконечно расширяющийся пул или есть что-то покрасивее? Как поведет себя ExecutionContext.Implicits.global?