Skip to main content
Microsoft
.NET Parallel Programming
.NET Parallel Programming
  • Home
  • DevBlogs
    • App Center
    • Azure DevOps
    • Notification Hubs
    • Visual Studio
    • Visual Studio Code
    • Visual Studio for Mac
    • Azure Artifacts
    • Azure Boards
    • Azure Pipelines
    • Azure Repos
    • Azure Test Plans
    • DevOps
    • C++
    • Java
    • Java Blog in Chinese
    • JavaScript
    • PowerShell
    • Python
    • Q#
    • Scripting
    • TypeScript
    • Visual Basic
    • Visual C#
    • Visual F#
    • .NET
    • ASP.NET
    • NuGet
    • Xamarin
    • Apps for Windows
    • Azure Government
    • Azure SDKs
    • Bing Dev Center
    • Command Line
    • Developer Support
    • DirectX Developer Blog
    • IoT Developer
    • Math In Office
    • Microsoft Edge Dev
    • Microsoft Azure
    • Office 365 Development
    • Old New Thing
    • PAX Graph
    • PAX Media
    • PAX Windows
    • Perf and Diagnostics
    • PIX on Windows
    • Startup Developers
    • Surface Duo
    • Sustainable Software
    • Windows Search Platform
    • Azure Cosmos DB
    • Azure Data Studio
    • Azure SQL
    • Azure Synapse Analytics
    • OData
    • Revolutions R
    • SQL Server Data Tools

    .NET Parallel Programming

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

    November 2011 | .NET Parallel Programming

    How to use C++ AMP from C# using WinRT
    How to use C++ AMP from C# using WinRT
    AvatarIgor Ostrovsky - MSFTNovember 11, 2011Nov 11, 201111/11/11
    [Updated 5/17/2012 for Visual Studio 11 Beta] In a previous article, How to use C++ AMP to C#, we described how you can use P/Invoke to call into C++ AMP and accelerate your C# apps on GPUs and other heterogeneous hardware. In this post, we'll take a look at how the same task becomes easier in Windows 8 using WinRT. Before attempting to call C...

    0C++
    New in .NET 4.5: ThreadLocal.Values
    New in .NET 4.5: ThreadLocal.Values
    AvatarIgor Ostrovsky - MSFTNovember 10, 2011Nov 10, 201111/10/11
    Available since .NET 4, ThreadLocal<T> is a container that holds a separate value for every thread. In practice, ThreadLocal<T> is often convenient for storing per-thread counters, resources, or partial results. As mentioned earlier on this blog, we have been thinking about adding a Values property to enumerate over the values ...

    0.NET 4.5Code Samples
    PLINQ Queries That Run in Parallel in .NET 4.5
    PLINQ Queries That Run in Parallel in .NET 4.5
    AvatarIgor Ostrovsky - MSFTNovember 10, 2011Nov 10, 201111/10/11
    One interesting thing to know about PLINQ is that not all queries are guaranteed to execute in parallel (See PLINQ Queries That Run Sequentially for reference). You can think of the AsParallel method as a hint to run in parallel for query shapes that it believes will be faster. By default, PLINQ prefers to use a simple sequential algorithm ...

    0.NET 4.NET 4.5
    Paper :: TPL Performance Improvements in .NET 4.5
    Paper :: TPL Performance Improvements in .NET 4.5
    AvatarDanny ShihNovember 10, 2011Nov 10, 201111/10/11
    We invested a lot of time into making parallel programming “just faster” for .NET 4.5.  You’ve already seen some neat tricks to ConcurrentDictionary.  There’s a lot more to say about improving the performance of the Task Parallel Library, and Joe Hoag has a written an excellent paper on the subject:TPL ...

    0.NET 4.5Parallel Extensions
    Crafting a Task.TimeoutAfter Method
    Crafting a Task.TimeoutAfter Method
    AvatarJoe HoagNovember 10, 2011Nov 10, 201111/10/11
    Imagine that you have a Task handed to you by a third party, and that you would like to force this Task to complete within a specified time period. However, you cannot alter the “natural” completion path and completion state of the Task, as that may cause problems with other consumers of the Task. So you need a way to obtain a copy or “...

    0.NET 4.NET 4.5
    Exception Handling in TPL Dataflow Networks
    Exception Handling in TPL Dataflow Networks
    AvatarCristina ManuNovember 9, 2011Nov 9, 201111/9/11
    A “dataflow block” is represented by a class implementing the IDataflowBlock interface. The state of a dataflow block is represented by the state of its IDataflowBlock.Completion Task, which itself has a Status property. When a dataflow block is in active state, meaning that it is currently doing processing or may do more processing in the...

    0.NET 4.5Code Samples
    ConcurrentDictionary Performance Improvements in .NET 4.5
    ConcurrentDictionary Performance Improvements in .NET 4.5
    AvatarIgor Ostrovsky - MSFTNovember 8, 2011Nov 8, 201111/8/11
    ConcurrentDictionary is a popular concurrent data structure that was introduced in .NET 4. In the .NET 4.5 release, ConcurrentDictionary gets two performance improvements. One optimization is related to the way ConcurrentDictionary avoids torn reads and writes. To explain the background, all reference types and some value types are guaranteed...

    0.NET 4.5Code Samples
    Updated Async CTP
    Updated Async CTP
    AvatarStephen Toub - MSFTNovember 1, 2011Nov 1, 201111/1/11
    In April, we released the Async CTP Refresh, and since then we've seen fantastic adoption of the technology.  We've also seen the technology landscape evolve.  Windows Phone 7.5, aka "Mango", was released.  Silverlight 5 has had both a Beta and an RC release.  And there have been multiple patches to Visual Studio and the ....

    0.NET 4Async
    Relevant Links

    corefx repository on GitHub

    .NET

    Microsoft Azure

    Top Bloggers
    Archive
  • February 2015
  • April 2013
  • March 2013
  • February 2013
  • January 2013
  • December 2012
  • November 2012
  • October 2012
  • September 2012
  • August 2012
  • June 2012
  • May 2012
  • April 2012
  • March 2012
  • February 2012
  • January 2012
  • December 2011
  • November 2011
  • October 2011
  • September 2011
  • June 2011
  • May 2011
  • April 2011
  • February 2011
  • January 2011
  • November 2010
  • October 2010
  • August 2010
  • July 2010
  • June 2010
  • May 2010
  • April 2010
  • March 2010
  • February 2010
  • January 2010
  • December 2009
  • November 2009
  • October 2009
  • September 2009
  • August 2009
  • July 2009
  • June 2009
  • May 2009
  • April 2009
  • March 2009
  • February 2009
  • January 2009
  • December 2008
  • November 2008
  • October 2008
  • September 2008
  • August 2008
  • July 2008
  • June 2008
  • May 2008
  • April 2008
  • March 2008
  • February 2008
  • January 2008
  • December 2007
  • November 2007
  • Stay informed

    Login
    Code Block
    What's new
    • Surface Duo
    • Surface Laptop Go
    • Surface Pro X
    • Surface Go 2
    • Surface Book 3
    • Microsoft 365
    • Windows 10 apps
    • HoloLens 2
    Microsoft Store
    • Account profile
    • Download Center
    • Microsoft Store support
    • Returns
    • Order tracking
    • Virtual workshops and training
    • Microsoft Store Promise
    • Financing
    Education
    • Microsoft in education
    • Office for students
    • Office 365 for schools
    • Deals for students & parents
    • Microsoft Azure in education
    Enterprise
    • Azure
    • AppSource
    • Automotive
    • Government
    • Healthcare
    • Manufacturing
    • Financial services
    • Retail
    Developer
    • Microsoft Visual Studio
    • Windows Dev Center
    • Developer Center
    • Microsoft developer program
    • Channel 9
    • Microsoft 365 Dev Center
    • Microsoft 365 Developer Program
    • Microsoft Garage
    Company
    • Careers
    • About Microsoft
    • Company news
    • Privacy at Microsoft
    • Investors
    • Diversity and inclusion
    • Accessibility
    • Security
    English (United States)
    • Sitemap
    • Contact Microsoft
    • Privacy
    • Manage cookies
    • Terms of use
    • Trademarks
    • Safety & eco
    • About our ads
    • © Microsoft 2021