+垫子是什么意思?

时间:2019-04-10 11:49:15

标签: scala akka-stream

请注意https://doc.akka.io/api/akka/current/akka/stream/scaladsl/Flow.html上Flow类的定义,它具有 以下签名:

 final class Flow[-In, +Out, +Mat] 

问题是,为什么第三个参数的类型为+Mat?我认为+Mat仅对Sink有意义,因为 Sink使用流。
甚至Source都有+Mat

final class Source[+Out, +Mat]  

1 个答案:

答案 0 :(得分:2)

每个阶段都体现出一定的价值,这使您能够使用SourceQueueWithComplete时获得通过Source.queue将元素推入流中的机制。

即使Flow可以实现某些值,但这也不常见,在这种情况下,您会看到实现的值为NotUsed