All about Async/Await, System.Threading.Tasks, System.Collections.Concurrent, System.Linq, and more…
Last week, the VP of the Developer Division at Microsoft announced the next version of Visual Studio and the .NET Framework: Visual Studio 2010 and the .NET Framework 4.0. In line with that, the folks at Channel 9 have been posting videos left and right about a bunch of the new Visual Studio features, and there should be a plethora of interesting information and discussions flowing at the PDC in a few weeks. For those of you that are planning to attend the PDC, you’ve likely reviewed the list of announced sessions and found a whole bunch on parallelism, including the following:
Parallel Programming for Managed Developers with the Next Version of Microsoft Visual Studio Come learn how the next version of Visual Studio and the Microsoft .NET Framework can help you write better performing and more scalable applications. We take a tour of new .NET APIs, including the Task Parallel Library (TPL) and Parallel LINQ (PLINQ). We also introduce new features in the debugger that help you quickly identify concurrency issues and visualize the internal state of your application.
Some phrases are likely jumping out at you by this point. “Task Parallel Library”. “PLINQ”. “The Next Version”. So...
Parallel Extensions will indeed be a part of the .NET Framework 4.0. Not only will it be a part of it, it will be a core part of it. In Soma’s blog post announcing the next wave, he cites the following as key focuses for the release:
• Significantly improve the core pillars of the developer experience • Support for the latest platforms spanning the client, web, server, services and devices • Targeted and simplified developer experiences for different application types
Parallelism is relevant to all of these. So in the .NET Framework 4.0, you’ll find the Task Parallel Library at the heart of the Framework in mscorlib.dll. You’ll find PLINQ sitting in System.Core.dll right alongside LINQ-to-Objects. And you’ll find new coordination and synchronization data types spread across various DLLs, enabling not only your applications, but the .NET Framework itself.
We’ll be diving into more details at the PDC, and we hope you’ll join us for that. In the meantime, you can learn more about our plans for Visual Studio 2010 and the .NET Framework 4.0 in the most recent issue of MSDN Magazine: Coding Tools: Improved Support For Parallelism In The Next Version Of Visual Studio.
Enjoy!
PingBack from http://blog.a-foton.ru/index.php/2008/10/11/parallel-programming-and-the-net-framework-40/
PingBack from http://garuma.wordpress.com/2008/10/11/c4-net-4-and-concurrency/
Does this mean this will be THE distribution vehicle for this or will it be out of band prior to that?
There may in fact be other distribution vehicles, but this is the primary one that we've announced.
Parallel Extensions are part of the .NET Framework 4.0
Woo. :) Can we expect the Silverlight/CoreCLR story to evolve similarly?
PingBack from http://blog.cwa.me.uk/2008/10/13/the-morning-brew-199/
PingBack from http://www.ditii.com/2008/10/14/parallel-computing-and-net-framework-40-for-windows/
Many congratulations!
It's great to know that we'll be able to rely on it being available wherever 4.0 is running :)
PingBack from http://insidehpc.com/2008/10/15/parallel-programming-and-the-net-framework-40/
So does this mean we'll have to wait for 4.0 to get our hands on PFX?
I'm already running some of my home software with PFX and can't wait to push it out to when the release bins come out.
Put the bins out a bit earlier... that way you'll have some time for performance feedback before 4.0!
I has been a while since I wrote a post on parallel programming. Since that time a lot has happend in
PingBack from http://www.leading-edge-dev.de/?p=10
PingBack from http://thevalerios.net/matt/2008/10/visual-studio-2010-and-net-framework-40-are-out/
Will they add any syntactic sugar for parallelism in any of the .NET languages just like what they did for LINQ?
I would rather be using parallel_for with a syntax similar to that of for as opposed to Parallel.For which isn't nearly as readable.
It would increase the visibility of parallelism and also send a message that parallelism in .NET is easy to do and not some arcane feature that will only be used by advanced developers.