Can I use the task parallel library in a .Net 3.5 project?

Mathias picture Mathias · Jun 7, 2010 · Viewed 25.4k times · Source

I heard that the Task Parallel Library can be used in a .Net 3.5 project. Is this correct, and if yes, how do I use it? In .Net 4.0, it resides in System.Threading, but when I select .Net 3.5 as the target in Visual Studio 2010, I don't get access to classes like Parallel and the Parallel loops.

Answer

Jon Skeet picture Jon Skeet · Jun 7, 2010

(Legacy answer - it seems the backport for 3.5 is no longer readily available.)

You can't use the full Parallel Extensions, no...

... but if you install Reactive Extensions for .NET 3.5, that comes with a version of Parallel Extensions, so you can use that. I don't know how much of PFX is supported, but I suspect there's enough for most people. (There are some details in the blog post, but that was from 2009... I don't know about any changes in 2010 which may or may not have been backported.)

Note that this is unsupported, too - probably fine for hobby projects, but if I wanted to use PFX commercially, I'd upgrade to .NET 4.