Async in C# - The Good, the Bad and the Ugly

Ceb0741ac4ae6202ca572d49d64395db?s=47 slang25
September 16, 2017

Async in C# - The Good, the Bad and the Ugly

We will take a closer look at why we care about async, how it works and then deep dive into async issues.

By the end of this session we will understand what SynchronizationContexts are, when to use ConfigureAwait, how deadlocks occur and how to detect and avoid them. On the way we'll touch on some C#7 features.

Whether you're building web apps or shared libraries, there will be something for everyone.

Links:
ContextFreeTask - https://github.com/ufcpp/ContextFreeTask/
vs-threading - https://github.com/Microsoft/vs-threading/
Async006 - https://github.com/dotnet/roslyn-analyzers/blob/master/src/Unfactored/AsyncPackage/AsyncPackage/BlockingAsyncAnalyzer.cs
ConfigureAwait.Fody - https://www.nuget.org/packages/ConfigureAwait.Fody
ConfigureAwait Checker for ReSharper - https://github.com/cincuranet/ConfigureAwaitChecker
ConfigureAwaitChecker - https://github.com/cincuranet/ConfigureAwaitChecker
DeadlockDetection - https://github.com/ramondeklein/deadlockdetection
Stephen Cleary - https://blog.stephencleary.com/
Avoiding basic mistakes in async await - http://www.anthonysteele.co.uk/AsyncBasicMistakes
Resynchronising async code - http://www.anthonysteele.co.uk/AsyncResync

Ceb0741ac4ae6202ca572d49d64395db?s=128

slang25

September 16, 2017
Tweet