我可以在.Net 3.5项目中使用任务并行库吗?

我听说可以在.Net 3.5项目中使用“任务并行库”。 这是正确的吗?如果是,该如何使用? 在.Net 4.0中,它驻留在System.Threading中,但是当我在Visual Studio 2010中选择.Net 3.5作为目标时,则无法访问诸如Parallel和Parallel循环之类的类。

2个解决方案
39 votes

(旧版答案-似乎3.5的backport不再可用。)

您不能使用完整的Parallel Extensions,不能...

...但是,如果您安装了.NET 3.5的Reactive Extensions,则它带有Parallel Extensions版本,因此您可以使用它。 我不知道支持多少PFX,但是我怀疑对于大多数人来说已经足够了。 (博客文章中有一些详细信息,但这是从2009年开始的。我不知道2010年的任何更改可能会被移植,也可能未被移植。)

请注意,这也不支持-对于爱好项目可能很好,但是如果我想在商业上使用PFX,我会升级到.NET 4。

Jon Skeet answered 2020-07-09T12:12:09Z
25 votes

正如Jon Skeet所述,System.Threading.dllTPL移植到.NET 3.5

我从其System.Threading.dll中制作了一个小组件(称为TaskParallelLibrary),以便于集成。

您可以从[http://nuget.org/packages/TaskParallelLibrary。]中获得它。

Omer Mor answered 2020-07-09T12:12:38Z
translate from https://stackoverflow.com:/questions/2987439/can-i-use-the-task-parallel-library-in-a-net-3-5-project