我想concat两个流动和我不能解释输出我的执行情况。
val source = Source(1 to 10)
val sink = Sink.foreach(println)
val flow1 = Flow[Int].map(s => s + 1)
val flow2 = Flow[Int].map(s => s * 10)
val flowGraph = Flow.fromGraph(
GraphDSL.create() { implicit builder =>
import GraphDSL.Implicits._
val concat = builder.add(Concat[Int](2))
val broadcast = builder.add(Broadcast[Int](2))
broadcast ~> flow1 ~> concat.in(0)
broadcast ~> flow2 ~> concat.in(1)
FlowShape(broadcast.in, concat.out)
}
)
source.via(flowGraph).runWith(sink)
我希望以下的产出从这个代码。
2
3
4
.
.
.
11
10
20
.
.
.
100
相反,我看到的只有"2"正在印制。 能否请你解释什么是错误的,在我implmentation和我应该如何改变程序,以获得所需的产出。