Showing results for Task Parallel Library - .NET Parallel Programming

Feb 2, 2015
0
2

New Task APIs in .NET 4.6

Stephen Toub - MSFT
Stephen Toub - MSFT

There are several nice API-level enhancements to the Task Parallel Library in .NET 4.6, which you can grab a preview of as part of the Visual Studio 2015 CTP. Task.From* .NET 4.5 had a Task.FromResult method.  This method makes it quick and easy to manufacture a new Task for a known result value, and is particularly useful when implementing a...

Task Parallel Library
Apr 3, 2013
4
1

Tasks, Monads, and LINQ

Stephen Toub - MSFT
Stephen Toub - MSFT

A few years back, Wes Dyer wrote a great post on monads, and more recently, Eric Lippert wrote a terrific blog series exploring monads and C#. In that series, Eric alluded to Task<TResult> several times, so I thought I’d share a few related thoughts on Task<TResult> and the async/await keywords.As both Wes and Eric highlight, a mo...

Parallel ExtensionsTask Parallel Library.NET 4.5
Mar 13, 2013
0
2

“Invoke the method with await”… ugh!

Stephen Toub - MSFT
Stephen Toub - MSFT

I can be a bit sensitive when it comes to language and how concepts are conveyed.  I think it’s important to be accurate, even if not precise, when describing what something is or how to use it, as otherwise the folks to whom you’re communicating can easily form the wrong mental model for that thing.  Having a good mental mode...

Parallel ExtensionsTask Parallel Library.NET 4.5
Feb 20, 2013
1
0

MVP Summit presentation on async

Stephen Toub - MSFT
Stephen Toub - MSFT

Lucian Wischik and I presented an "async clinic" at the MVP Summit in Bellevue this week.  The async/await keywords in C# and Visual Basic drastically simplify asynchronous programming, but that of course doesn't mean that using them is without any gotchas: the goal of the discussion was to highlight some of the key areas in which&nb...

Parallel ExtensionsTask Parallel Library.NET 4.5
Jan 28, 2013
0
0

Psychic Debugging of Async Methods

Stephen Toub - MSFT
Stephen Toub - MSFT

These days it’s not uncommon for me to receive an email or read a forum post from someone concerned about a problem they’re experiencing with an async method they’ve written, and they’re seeking help debugging the issue.  Sometimes plenty of information about the bug is conveyed, but other times the communication is voi...

Parallel ExtensionsTask Parallel Library.NET 4.5
Jan 13, 2013
0
2

Cooperatively pausing async methods

Stephen Toub - MSFT
Stephen Toub - MSFT

Recently I was writing an app that processed a bunch of files asynchronously.  As with the Windows copy file dialog, I wanted to be able to provide the user with a button that would pause the processing operation.To achieve that, I implemented a simple mechanism that would allow me to pass a “pause token” into the async method, whi...

Parallel ExtensionsTask Parallel Library.NET 4.5
Oct 5, 2012
4
2

How do I cancel non-cancelable async operations?

Stephen Toub - MSFT
Stephen Toub - MSFT

This is a question I hear relatively frequently: “I have an async operation that’s not cancelable.  How do I cancel it?” The construction of the question often makes me chuckle, but I understand and appreciate what’s really being asked.  The developer typically isn’t asking how to cancel the operation itse...

Parallel ExtensionsTask Parallel Library.NET 4.5
Sep 22, 2012
0
1

New TaskCreationOptions and TaskContinuationOptions in .NET 4.5

Stephen Toub - MSFT
Stephen Toub - MSFT

Astute users of the Task Parallel Library might have noticed three new options available across TaskCreationOptions and TaskContinuationOptions in .NET 4.5: DenyChildAttach, HideScheduler, and (on TaskContinuationOptions) LazyCancellation.  I wanted to take a few minutes to share more about what these are and why we added them.DenyChildAttachA...

Task Parallel Library.NET 4.NET 4.5
Sep 11, 2012
0
1

Forking in async methods

Stephen Toub - MSFT
Stephen Toub - MSFT

Given that .NET 4.5 has only recently been released in its final form, it’s not surprising that many folks are still very new to the async/await keywords and have misconceptions about what they are and what they do (I’ve tried to clarify some of these in this Async/Await FAQ).  One of the more common misconceptions is that a method...

Parallel ExtensionsTask Parallel Library.NET 4.5
Aug 15, 2012
0
0

Implementing Then with Await

Stephen Toub - MSFT
Stephen Toub - MSFT

In a post a while ago, I talked about sequential composition of asynchronous operations.  Now that we have the async/await keywords in C# and Visual Basic, such composition is trivial, and async/await are indeed the recommended way to achieve such composition with these languages.However, in that post I also described a few “Then” ...

Parallel ExtensionsTask Parallel Library.NET 4.5