.NET Parallel Programming

All about Async/Await, System.Threading.Tasks, System.Collections.Concurrent, System.Linq, and more…

What’s new in Beta 1 for the Task Parallel Library? (Part 3/3)

Related posts: So what else is new in TPL for Beta 1 (finally)?  In the last post, we mentioned that TaskFactory offers more static helper methods than just StartNew.  In this post, we’ll cover those methods (FromAsync, ContinueWhenAll, and ContinueWhenAny) as well as the new TaskScheduler class.FromAsyncIn order to better to ...

What’s new in Beta 1 for the Task Parallel Library? (Part 2/3)

Related Posts: Last week we talked about changes under the covers, redesigns in System.Threading.Parallel, and using CancellationTokens.  So what else is new in TPL for Beta 1?  In this post, we’ll cover the new TaskFactory class, the plight of Future<T> (Task<TResult>), and TaskCompletionSource<TResult>....

Do you use LazyInitMode.AllowMultipleExecution?

In an effort to release simple, streamlined APIs, we spend a lot of time poring over every aspect of our types.One of the types that we know is getting used a lot both internally and externally is LazyInit<T>.  One of LazyInit<T>’s constructors takes in a LazyInitMode enum which allows you to initialize a value in one of...

What’s new in Beta 1 for the Task Parallel Library? (Part 1/3)

Related Posts: The Task Parallel Library (TPL) has come a long way since its inception.  Over the course of several CTPs, it has evolved to be an important and central new component in the .NET Framework.  Most recently, TPL was released as part of mscorlib.dll in the Visual Studio 2010 and .NET Framework 4.0 CTP around the October ...

What’s new in Beta 1 for the coordination data structures?

We're currently working on the Beta of .NET 4.0 (no dates to announce) and there are lots o’ new stuff for the Parallel Extensions.  We hope you’re as excited about it as we are.  Given that we have so much coming down the pipes, we decided to roll out posts on what’s coming in digestible chunks.  What’s better to start with than ...

Maestro has its own blog!

The response to our initial post on this blog about Maestro has inspired us to give it its own blog.  If you’re not yet in the know, Maestro is a new incubation language from Microsoft’s Parallel Computing Platform team for safe and scalable parallel programming for .NET. If you have interest in Maestro or any topics related ...

Parallel Extensions on Wikipedia

Did you know we’re on Wikipedia?  We love Wikipedia; it’s a great resource for hungry minds and we’re elated to have an article dedicated to the Extensions.  Unfortunately,  our article is a bit out-of-date. We could update it ourselves but we’d rather respect Wikipedia’s policies and avoid ...