【发布时间】:2018-02-20 21:12:25
【问题描述】:
我将消息推送到BufferBlock,然后我想将其路由到两个 BufferBlock 之一。主 Block (P) 将获取所有消息,直到 Buffer 中有一定数量的消息。一旦 P 缓冲区被填满,我想将消息推送到 FILO BufferBlock(S) 中。然后我想通过ActionBlock 从这些缓冲区中消费,如果它有消息,则优先级在 S 上。
我想我可以弄清楚如何将所有东西组装在一起,但我尝试查看 corefx 中 BufferBlock 的实现,但我认为我不具备使它成为 FILO 的能力。
TLDR:是否已经有BufferBlock 的实现,即 FILO,或者是否有一种简单的(相对)方法可以通过修改 corefx 的源来制作 BufferBlock FILO?
【问题讨论】:
-
似乎最合适的是ConcurrentStack
-
是的,我正在考虑,我只是想使用 TPL 的东西来清洁
-
最终使用并发堆栈
标签: c# task-parallel-library tpl-dataflow