c# - 在 TPL 数据流中批处理 TransformManyBlock 的输出
问题描述
有没有办法限制TranformManyBlock
TPL 数据流库中 a 的输出队列?
我有一个TranformManyBlock
将文件作为输入并为MyObject
文件中的每一行输出一个实例的方法。问题是文件中可能有无限数量的行,最好从 a 发出批处理TransformManyBlock
以在下一个块中进行处理,而不是一次将它们全部加载到内存中。这几乎就像需要一个TransformManyBatchBlock
.
像这样的东西:
var convertFileToObjects = new TransformManyBatchBlock<FileInfo, MyObject>((Post, file) =>
{
foreach (var line in file)
{
Post(ConvertFileToMyObject(line));
}
}, new ExecutionDataflowBlockOptions(){OutputBoundedCapacity = 1000});
解决方案
推荐阅读
- spring - 如果数据不是每分钟轮询一次,SimpleMeterRegistry 会清除数据
- neo4j - 删除最后n个关系neo4j
- java - Android WebView 无法在 Android 4.2.2 上加载 url
- c++ - 每次我需要编译 C++ 程序时,是否需要输入 -std=c++17 (或我想使用的任何标准)?
- android - 当用户在范围内时,有时会调用进入和退出方法
- jenkins - Jenkins 并行管道中的 npm ci
- java - 将地图区域划分为给定半径的重叠圆圈
- ios - MTKView 清晰显示
- r - RStudio Server,Shiny 应用程序无法启动,应用程序页面立即变灰
- sql - 如何使用单个 SQL 查询获取物料清单的所有级别数据