12得票2回答
这适合使用TPL Dataflow吗?

我在不同的任务上运行了一个相当典型的生产者/消费者模型。 任务1:从二进制文件中读取byte[]批次,并为每个byte数组集合启动一个新任务(该操作进行批处理以进行内存管理)。 任务2-n:这些是工作任务,每个任务都在传入的byte数组集合(来自任务1)上操作,对byte数组进行反序列化,...

12得票1回答
Dataflow管道中的全局分块错误处理

我正在设计一个长时间运行的数据流水线,由多个块组成。项被送到管道的输入块中,最终通过它并在UI中显示(作为对用户的礼貌,但管道的真正工作是将处理结果保存到磁盘中)。 管道块内的lambda函数可能会因各种原因(错误的输入、网络故障、计算过程中出错等)而抛出异常。在这种情况下,我希望将有问题的...

11得票1回答
SingleProducerConstrained和MaxDegreeOfParallelism - SingleProducerConstrained:限制只有一个生产者的并行处理器。 - MaxDegreeOfParallelism:并行处理器的最大并行度。

在C# TPL Dataflow库中,SingleProducerConstrained是ActionBlock的一种优化选项,当只有一个线程在提供操作块时,可以使用它: 如果一个块只会被单个生产者使用,也就是说,每次只有一个线程会在块上使用Post、OfferMessage和Complet...

11得票2回答
我应该翻译成:在哪里可以找到适用于4.0的TPL数据流版本?

我正在寻找TPL数据流库的.NET 4.0版本。 Nuget包有一个4.0版本的库,但似乎针对的是.NET 4.5。 我在这个论坛中找到了各种关于4.0版本的参考资料: http://social.msdn.microsoft.com/Forums/en-US/tpldataflow/t...

11得票3回答
异步日志记录抛出NullReferenceException异常

我正在尝试在针对.NET 4.0的MVC 4控制器操作中使用AsyncTargetingPack将一些信息异步记录到SQL Server。 我本可以直接跳转到.NET 4.5,但我的应用程序位于Azure中,我们仍在等待更新... 这段代码按预期工作(一行被写入我的数据库而没有抛出异常): ...

11得票2回答
在TPL Dataflow中具有保证传递的BroadcastBlock

我有一个数据流要以几种不同的方式进行处理…所以我想将每个收到的消息的副本发送到多个目标,以便这些目标可以并行执行…然而,由于数据的流速比我的目标处理速度要快得多,并且数据量很大,因此我需要在我的块上设置BoundedCapacity。如果没有BoundedCapacity,我很快就会耗尽内存。...

10得票1回答
意外行为- TPL DataFlow BatchBlock在TriggerBatch执行时拒绝项目

当您创建带有有限容量的批处理块并在同时发布新项目时调用triggerBatch-在触发批处理执行期间,发布新项目将失败。 调用Trigger batch(每隔X时间)是为了确保数据不会在块中延迟太长时间,在传入数据流暂停或减慢的情况下。 以下代码将输出一些“发布失败”事件。例如: p...

10得票2回答
强制任务在当前线程继续执行?

我正在为.NET移植AKKA框架(现在还不要太认真,目前只是对其中Actor部分的周末黑客马拉松) 我遇到了一些关于"Future"支持的问题。 在Java/Scala Akka中,Future需要使用Await同步等待调用。 很像.NET Task.Wait()。 我的目标是支持真正的异...

10得票2回答
TPL数据流管道设计基础

我试图使用系统资源来创建设计良好的TPL数据流管道。我的项目是一个HTML解析器,它将解析出的值添加到SQL Server数据库中。我已经拥有了未来管道的所有方法,现在我的问题是什么是最优的方式将它们放置在数据流块中,以及我应该使用多少个块?其中一些方法是CPU绑定,另一些方法是I/O绑定(从...

10得票2回答
TPL数据流和Akka.net有什么区别?

我曾经使用过TPL数据流,非常喜欢它。从我的Java / Scala朋友那里听说过Akka这个术语,所以我试图了解一下,并发现akka也有一个.net端口。太好了。当我继续阅读有关akka的信息时,惊讶地发现它听起来与TPL数据流完全相同。 那么,TPL数据流和Akka.net之间有什么区别...