I've been tearing my hair with this problem for some time so I think it's time to report it.
I'm writing a Xamarin Forms project and there, naturally, most of the data layer is heavily asynchronous. The problem is debugging async methods is extremely difficult with Rider. What happens is:
- I put a breakpoint on an `async` method. Debugger breaks
- I step over (F10) the async method
Very very often the debugger then breaks somewhere inside the async call tree, very often inside the `Task` class, here:
internal bool NotifyDebuggerOfWaitCompletionIfNecessary()
// Notify the debugger if of any of the tasks we've waited on requires notification
if (IsWaitNotificationEnabled && ShouldNotifyDebuggerOfWaitCompletion)
return false; // <-- DEBUGGER BREAKS HERE
I have turned off "Enable external source debug"
This makes async debugging extremely confusing with constant mental context switching and it's very easy to loose track. I often find myself writing most of the code in Rider and then resort to Visual Studio for a leaner debugging experience.
This problem have persisted, throigh all versions, since I started using Rider full time this summer.
Is there anything I can do or is it simply a bug?