Questions tagged «plinq»

7
何时处置CancellationTokenSource?
该课程CancellationTokenSource是一次性的。快速浏览Reflector即可证明KernelEvent,(很可能是)非托管资源的使用。由于CancellationTokenSource没有终结器,因此如果不处理它,GC将不会这样做。 另一方面,如果您查看MSDN文章“ 托管线程中的取消”中列出的示例,则只有一个代码片段会处理该令牌。 用代码处理它的正确方法是什么? using如果不等待,则无法包装用于启动并行任务的代码。而且只有在您不等待的情况下取消才有意义。 当然,您可以ContinueWith通过Dispose电话添加任务,但这就是方法吗? 可取消的PLINQ查询如何处理,这些查询不同步回去,而只是在最后做一些事情?比方说.ForAll(x => Console.Write(x))? 可重用吗?可以将同一令牌用于多个调用,然后将其与主机组件(例如UI控件)一起处置吗? 因为它没有像一Reset对清理方法IsCancelRequested和Token字段我想这是不能重复使用,这样每次启动一个任务(或PLINQ查询),你应该创建一个新的。是真的吗 如果是,我的问题是Dispose在那么多CancellationTokenSource实例上处理的正确和推荐策略是什么?

2
Reactive Framework,PLINQ,TPL和并行扩展如何相互关联?
至少自.NET 4.0发布以来,Microsoft似乎在支持并行和异步编程上付出了很多努力,并且似乎已经出现了许多与此相关的API和库。特别是最近到处都经常提到以下奇特的名字: 反应框架 PLINQ(平行LINQ), TPL(任务并行库)和 并行扩展。 现在它们似乎都是Microsoft产品,它们似乎都针对.NET的异步或并行编程方案。但是,目前还不清楚它们实际上是什么以及它们之间如何相互联系。有些可能实际上是同一回事。 简而言之,任何人都可以直接确定什么是记录吗?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.