Asynchronous debugging is supposed to solve the problems of threading and to some degree async helps… But it doesn’t make it easier to deal with it. Threading is hard to gauge the state of a specific thread by looking at the stack. Most IDEs support a view that's more oriented to heavily threaded apps. The downside is that it's a bit noisier than the default UI, but it might improve your experience noticeably!
Companies Mentioned
Shai Almog
@shai.almog
Author, DevRel, Blogger, Open Source Hacker, Java Rockstar, Conference Speaker, Instructor and Entrepreneur