8得票1回答
如何知道TPL Dataflow块是否繁忙?

TPL Dataflow块有`.InputCount`和`.OutputCount`属性。但是它现在可以在项目上执行,而且没有像` .Busy [Boolean]`这样的属性。那么有没有办法知道块是否正在运行,并且其中一个项目仍然存在? 更新: 让我解释一下我的问题。这张图片显示了我当前的...

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...

13得票3回答
使用TPL Dataflow按持续时间或阈值进行批处理

我已经使用TPL Dataflow实现了生产者..消费者模式。使用案例是代码从Kafka总线中读取消息。为了提高效率,当发送到数据库时,我们需要批量处理消息。 在TPL数据流中是否有一种方式可以保留消息,并在达到大小或持续时间阈值时触发? 例如,当前的实现在从队列中拉出消息后立即发布该消息。 ...

9得票2回答
数百个用户和大文件的良好处理方法

我有几个数据文件(每个文件接近1GB),其中的数据是字符串行。 我需要使用数百个消费者处理每个文件。每个消费者执行的处理与其他消费者不同。消费者不会同时写入任何地方,他们只需要输入字符串。处理后,他们会更新本地缓冲区。消费者可以轻松并行执行。 重要提示:对于一个特定的文件,每个消费者必须按...

8得票1回答
如何正确管理TPL Dataflow中的完成状态。

我创建了一个类似于网络爬虫的程序来生成我需要管理的1000多个 Web 服务的报告。为此,我创建了一个 TPL Dataflow Pipeline 来管理获取和处理数据。 我想象中的 Pipeline 程序看起来有点像这样(我的绘画技能很差 :D): 我已经创建了实现,并且一切都正常工作,...

16得票2回答
VS 2012 RC中TPL Dataflow和TPL引用的问题

我刚刚将Visual Studio 11 Beta升级到了新的Visual Studio 2012 RC版本,之后在引用TPL Dataflow时遇到了问题。 首先,我尝试像以前一样从框架中添加引用Dataflow。但是当我尝试这样做时,会出现一个错误提示框: 无法添加对 'Syst...

8得票1回答
如何在捕获的ExecutionContext上运行异步委托

正如Stephen Toub在这篇文章中所解释的那样,当您向ActionBlock提交消息时,可以在调用ActionBlock.Post之前执行ExecutionContext.Capture,将同时包含消息和ExecutionContext的DTO传递到块中,然后在消息处理委托内使用Exec...

9得票1回答
自定义 ActionBlock<T>

我想实现一个有优先级的 ActionBlock&lt;T&gt;,这样我就可以通过使用 Predicate&lt;T&gt; 条件性地给一些 TInput 项目设置优先级。 我阅读了 Parallel Extensions Extras Samples 和 Guide to Implemen...

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

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

21得票1回答
TPL Dataflow(TDF)和Reactive Extensions有什么区别?

经过数天的谷歌搜索,我认为我不能决定哪一个框架适用于哪种场景。当然我想使用一个完美的框架将两者结合起来(这是不现实的)。我甚至知道它们可以一起使用,但真正的问题是每个框架中的哪些核心设计元素使得它们不可能互相模拟。 以下是我找到的: 在RX中,有虚拟时间,因此调度程序有效地控制整个网络,...