19得票3回答
使用TPL的Parallel.ForEach时如何跟踪进度

以下哪种方法是跟踪进度的最佳方式?long total = Products.LongCount(); long current = 0; double Progress = 0.0; Parallel.ForEach(Products, product => { try ...

17得票1回答
在所有的Linq查询中尝试使用Plinq是可以的吗?

我看到说如果发现PLinq更昂贵,PLinq将自动使用非并行的Linq。因此,我想为什么不在可能的情况下全部使用PLinq,让运行时来决定使用哪一个。 这些应用程序将部署到多核服务器上,我可以编写更多的代码来处理并行性。 默认使用PLinq有哪些缺点?

16得票2回答
并行Linq查询优化

最近我一直在使用无副作用的方法来重构代码,以便使用并行 Linq 加速程序运行。但是在这个过程中,我多次发现惰性计算会使事情变得更糟,而不是更好,因此我想知道是否有任何工具可以帮助优化并行 Linq 查询。 我之所以问这个问题,是因为最近我通过修改某些方法并在特定的关键位置添加了 AsPar...

16得票5回答
你正在使用并行扩展吗?

我希望这不是滥用stackoverflow;最近我在这里看到一些有关并行扩展的很棒的问题,这引起了我的兴趣。 我的问题是: 你正在使用并行扩展吗?如果是,你是怎么使用的? 我叫Stephen Toub,是微软的并行计算平台团队成员。我们负责Parallel Extensions。我一直很想...

16得票2回答
C#: AsParallel - 顺序重要吗?

我正在构建一个简单的LinQ-to-object查询,我想并行化它,但我想知道语句的顺序是否重要? 例如: IList<RepeaterItem> items; var result = items .Select(item => item.FindCo...

15得票2回答
PLINQ是否有异步版本?

我希望能够在处理项目时以一定的并行度对数据流执行查询。通常情况下,我会使用 PLINQ 实现这一点,但我的工作项不是 CPU 绑定,而是 IO 绑定,我想要使用异步 IO。PLINQ 不支持异步工作。 有什么聪明的方法可以运行类似于 PLINQ 的查询,但具有异步工作项? 以下是问题的更详细...

13得票9回答
PLINQ表现不如普通LINQ。

令人惊讶的是,使用PLINQ在我创建的小测试案例中并没有带来收益;事实上,它甚至比普通的LINQ还要更差。 以下是测试代码: int repeatedCount = 10000000; private void button1_Click(object sender, Even...

13得票2回答
如何并行运行LINQ中的“let”语句?

我有这样的代码:var list = new List<int> {1, 2, 3, 4, 5}; var result = from x in list.AsParallel() let a = LongRunningCalc1(x) ...

12得票6回答
已排序的 PLINQ ForAll

MSDN文档关于PLINQ中保留顺序的说明中,对ForAll()给出了以下内容: 当源序列有序时的结果:在并行执行时是不确定的 当源序列无序时的结果:在并行执行时是不确定的 这是否意味着ForAll方法的有序执行从来没有被保证过? 我之前没有使用过PLINQ,但下面的Code Rev...

12得票1回答
使用PLinq的List.Contains()方法?

假设我有一个很大的列表List<long> longList = new List<long>(10000000) 我想执行以下查询:bool found = longList.Contains(4345235234524245124L); 有没有一种方法可以使用PLi...