Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Akka Streams`groupBy`流量在次流量完成时发生变化?_Akka_Akka Stream - Fatal编程技术网

Akka Streams`groupBy`流量在次流量完成时发生变化?

Akka Streams`groupBy`流量在次流量完成时发生变化?,akka,akka-stream,Akka,Akka Stream,在最大容量为n的流定义中使用groupBy时: source.groupBy(Int.MaxValue, _.key).to(Sink.actorRef) 如果我连接子流,结果是一个参与者下沉,并故意导致子流在某条消息上终止,这会释放groupBy容量吗?如果接收器结束一个子流,它会从n到n-1返回到n?这是建立动态ish图的可行方法吗?关于groupBy的一般工作方式:是,maxSubstreams容量是动态的,即它表示活动子流的最大数量 GroupBy阶段将每个子流的引用保持在其内部状态,

在最大容量为
n
的流定义中使用
groupBy
时:

source.groupBy(Int.MaxValue, _.key).to(Sink.actorRef)

如果我连接子流,结果是一个参与者下沉,并故意导致子流在某条消息上终止,这会释放
groupBy
容量吗?如果接收器结束一个子流,它会从
n
n-1
返回到
n
?这是建立动态ish图的可行方法吗?

关于
groupBy
的一般工作方式:,maxSubstreams容量是动态的,即它表示活动子流的最大数量

GroupBy
阶段将每个子流的引用保持在其内部状态,并且每当特定子流完成时,都会删除该引用


关于你的具体例子,我认为没有办法确保“一个亚流被水槽终止”。这是因为通过在
groupBy
之后使用
to(Sink.actorRef)
所有流将为单个参与者提供信息

谢谢你的澄清!那么,有没有一种推荐的方法可以优雅地关闭一个亚流呢;看来我可以使用
takeWhile
/
statefulMapconcat