How to debug asynchronous scenarios in.NET

How to debug asynchronous scenarios in.NET

Session's metadata

Level 400
  • .NET Core
  • .NET Standard
  • Debugging


Sorry, this session has not been scheduled yet

How to debug asynchronous scenarios in.NET

Times have changed. Multi-core processors have become the norm and multi-thread development has been replaced by asynchronous programming. You think you know everything about async/await... until something starts to go wrong. While debugging synchronous code can be simple, investigating an asynchronous deadlock or race condition becomes curiously very complicated. In this session, follow us, through real (and experienced) cases, to cover the main uses of asynchronous code that can leave... in a carafe. You will be confronted with deadlocks and will understand the reasons behind a "ThreadPool thread starvation". In addition to magic formulas in WinDBG to track async/await call chains, we will not forget to show you tips and tricks in Visual Studio to quickly analyze hundreds of call stacks or Task status.


Christophe Nasarre

Staff Software Engineer, Criteo

In addition to developing and shipping software on Microsoft stacks for 25+ years, Christophe Nasarre has been working as a Technical Reviewer for MSPress, Addison-Wesley and other publishing companies since 1996 on books such as "CLR via C#" and the...

  • France

Kevin Gosse

Senior Staff Software Engineer, Criteo

Kevin Gosse has been using Microsoft .NET technologies for 10 years, across client, server, and mobile applications. He is currently employed at Criteo, where he works on scalability, debugging, and optimization issues.

  • France