TPL Dataflow(TDF)是用于构建并发应用程序的.NET库。它通过用于进程内消息传递,数据流和流水线操作的原语来促进面向actor / agent的设计。 TDF建立在.NET 4中的TPL(任务并行库)之上,并与C#,Visual Basic和F#中的异步语言支持集成。 TDF缺少按键(如SSIS)和基于时间的窗口(在Rx中可用)的连接/合并。
我的应用程序接收多个文件(50 个文件,每个文件有 1000 行)并在数据流块中处理它们。在其中一个块 UploadToDatabaseBlock 中,我将 MaxDegreeOfParalellism 设置为 8。这会创建
分叉 TPL Dataflow 管道时如何正确等待完成? [重复]
我有一个 TPL 数据流管道,其中目标块链接到两个传播块,然后这两个块都链接到源块。所有这些都与 PropagateCompletion = true 相关。第一个
我创建了一个 .Net Framework 4.7.2 控制台应用程序,该应用程序在 AWS 托管的 API 中同时发出许多请求。我的问题是请求花费的时间太长。 API的响应时间通常为1...
当我使用贪婪模式时,一切都按预期进行。但是当我启用非贪婪模式时,会引发以下异常: 未处理的异常。 System.InvalidOperationException:源已完成
为什么 Bounded BroadcastBlock 和 BufferBlock 中的 TPL Post 响应不同?
我预计最后一个断言中的 result1 在 BroadcastBlock 上与在 BufferedBlock 上一样等于 false,但事实并非如此。 我正在使用最新的 System.Threading.Tasks.Dataflow 版本 8.0.1 变种
如何在完成之前在 TPL Dataflow 块中生成多个输出
我有这样的情况,我正在尝试使用 TPL 数据流构建一个可以处理大量项目的管道。在管道中的某个时刻,我需要对项目进行批处理并发送到下一个块…
我有一个简单的 tpl 数据流,它基本上执行一些任务。 我注意到,当任何数据块中出现异常时,它不会被初始父块调用者捕获。 我有广告...
如何在捕获的 ExecutionContext 上运行异步委托
正如 Stephen Toub 在这篇文章中所解释的,当您向 ActionBlock 提交消息时,您可以在调用 ActionBlock.Post 之前执行 ExecutionContext.Capture,传递包含消息和 ExecutionC 的 DTO...
如何在数据流块中为每个线程创建对象而不是为每个请求创建对象?
我有一个代码示例 var options = new ExecutionDataflowBlockOptions(); var actionBlock = new ActionBlock(异步请求=>{ var rand = new Ranodm(); //做一些事情...
有一个 .NET Core Worker Service,它具有用于执行并行过程的数据流模式。它有TransformBlock和ActionBlock。 在运行 Worker 进程时,TransformBlock 和 Action...
C# Dotnet Core 数据流模式单元测试不等待操作完成
有一个 Dotnet 核心工作服务,它具有用于执行并行过程的数据流模式。它有TransformBlock和ActionBlock。 运行 Worker 进程时,TransformBlock 和
Parallel.ForEach 与 ActionBlock
对于给定的 MaxDegreeOfParallelism 和需要处理的固定数量的对象(即在它们上执行某些代码),Parallel.ForEach 和 ActionBlock 似乎是相同的
我正在学习数据流基础知识。 这是一个代码示例,对我来说看起来正确,但不起作用。 它不会返回结果整数值,而是冻结。 根据我的理解,这是因为完成...
如果排队的项目数小于BatchSize,如何在超时后自动调用TriggerBatch?
使用 Dataflow CTP(在 TPL 中) 如果超时后当前排队或推迟的项目数量小于 BatchSize,是否有办法自动调用 BatchBlock.TriggerBatch? 还有
如果在不同线程中使用同一个对象,DataFlow 对象是否需要锁定
我在不同的线程中使用相同的数据流对象。 是否必须在数据流对象上使用锁,或者对象是否自动线程安全? 例如: // 定义数据流对象
IHostedService 中的 Rabbit MQ 线程安全
我有三个 C# 类。 rabbitmq 订阅者有一个 connect() 方法、subscribe(Action messageHandler) 方法和一个 Ack(ulong messageId) 方法。此类被实例化为单例并通过...
为什么我的 ActionBlock 在没有设置的情况下会进入完成状态?
一时百思不得其解,想不出什么合理的解释。也许这里有人有解释。 设置: 我有一个生成很多工作项的类,要用 Actio 计算...
我试图理解TPL Dataflow中的异常处理,以便能够有效地处理错误。在我的评论1.下面,我期望捕获一个AggregateException,但一切都停止了......。
我写了一个方法来实现TPL ActionBlock,它将做一个函数来找到我正在Posting到块中的元素的XPath。我从一个实时应用程序中发送元素(...
我正在使用TPL Dataflow建立一条流水线。这个流水线在逻辑上应该做到以下几点。首先处理多个数据项--比如说是pollingBlock。在满足某些条件的情况下...