For example, if you don't explicitly call the java.awt.Toolkit.sync() method after updating the UI state (which according to the docs "is useful for animation"), Swing will in my experience introduce seemingly random delays and UI lag because it just doesn't bother sending the UI updates to the window system.
I thought it was because they could copy chromium.
Which inputs are getting latency? The keyboard? The files?
> the non blocking nature
But God help you if you have to change the code. Async threads are a way to organize it and make it workable for humans.
Absolutely not