As pointed out by Vladimir there can be tasks that traverse document's content (e.g. a lexer's tokens) and take several hundreds of ms. Such task may block document modifications. We should establish a mechanism for identifying such tasks.
Although AbstractDocument.readLock() and writeLock() are protected final, the render() and runAtomic() could be enhanced with the execution time checking functionality.
I propose to support configurable thresholds e.g.
Exceeding the thresholds would report the problematic thread's stack. What do you think?
Mila, Configurable properties are great. We'll run our responsiveness test with different values then.
This old bug may not be relevant anymore. If you can still reproduce it in 8.2 development builds please reopen this issue.
Thanks for your cooperation,
NetBeans IDE 8.2 Release Boss