Scala Akka stream,一旦我收到一些物品,触发动作?
我正在akka streams中寻找“聚合器”块。例如,一个块等待收到3个字符串,然后触发一个操作(如计算平均长度),并向下游传播该操作的结果 例如,流将等待接收三个字符串Scala Akka stream,一旦我收到一些物品,触发动作?,scala,akka,akka-stream,Scala,Akka,Akka Stream,我正在akka streams中寻找“聚合器”块。例如,一个块等待收到3个字符串,然后触发一个操作(如计算平均长度),并向下游传播该操作的结果 例如,流将等待接收三个字符串 "hallo" "boat" "cat" 然后计算平均长度 4 然后把它送到下游。实现这一点最简单的方法是什么?这取决于需求,但在您的特定情况下,您可以这样做 Source(List(1, 2, 3, 4, 5, 6, 7)) .grouped(3) .map { chunk => chunk.su
"hallo"
"boat"
"cat"
然后计算平均长度
4
然后把它送到下游。实现这一点最简单的方法是什么?这取决于需求,但在您的特定情况下,您可以这样做
Source(List(1, 2, 3, 4, 5, 6, 7))
.grouped(3)
.map { chunk =>
chunk.sum / 3.0
}
您也可以使用.scan
来执行此操作