Tag: 数据流

TPL Dataflow:在保持秩序的同时设计并行性

我以前从未使用过TPL,所以我想知道是否可以用它完成:我的应用程序从很多帧创建一个gif图像动画文件。 我从一个Bitmap列表开始,它代表了gif文件的帧,需要为每个帧执行以下操作: 在框架上绘制一些文本/位图 裁剪框架 调整框架大小 将图像缩小为256色 显然,这个过程可以对列表中的所有帧并行完成,但是对于每个帧,步骤的顺序必须相同。 之后,我需要将所有帧写入gif文件。 因此,需要以与原始列表中相同的顺序接收所有帧。 最重要的是,此过程可以在第一帧准备就绪时开始,无需等到所有帧都被处理完毕。 这就是情况。 TPL Dataflow适合这个吗? 如果是的话,任何人都可以给我一个关于如何设计tpl块结构以反映上述过程的正确方向的提示吗? 与我发现的一些样品相比,这对我来说似乎相当复杂。

FIFO /队列缓冲区专门用于字节流

是否有任何.NET数据结构/类组合允许将字节数据附加到缓冲区的末尾,但所有的查找和读取都是从一开始,在我读取时缩短缓冲区? MemoryStream类似乎也是其中的一部分,但是我需要为读取和写入维护单独的位置,并且它在读取后不会自动丢弃数据。 答案已经回复了这个问题 ,这基本上就是我要做的事情,但我更喜欢我可以在同一个过程的不同组件中进行异步I / O,就像普通管道甚至是网络流(我需要先过滤/处理数据)。