46

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.

2 Answers 2

40

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

Sign up to request clarification or add additional context in comments.

6 Comments

If installing something else is a requirement, I think I'd install the .NET Framework 4 altogether.
@zneak: In some situations you may have the option of deploying another library, but not upgrading the framework version.
Works a charm, thank you! @zneak: I have .Net 4.0 installed, the problem is that I need to work with a component which can talk to .Net dlls, but up to .Net 3.5 only.
Most recent version with System.Threading.dll: stackoverflow.com/questions/6891787/…
The version that targets 3.5 doesn't appear to be available any more.
|
25

As Jon Skeet mentioned, Rx backported TPL to .NET 3.5.

I have made a nuget (called TaskParallelLibrary) out of their System.Threading.dll, for easier integration.

You can get it from http://nuget.org/packages/TaskParallelLibrary.

1 Comment

It's Microsoft's module. I just repackaged it in nuget form. I don't have the source.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.