On Wed, 11 Jan 2023 11:33:43 GMT, Prasanta Sadhukhan <[email protected]> wrote:
>> SwingWorker done() method [spec >> ](https://github.com/openjdk/jdk/blob/master/src/java.desktop/share/classes/javax/swing/SwingWorker.java#L452) >> says "Executed on the Event Dispatch Thread after the doInBackground method >> is finished" >> but there's no mechanism in place to honor that claim. >> The >> [spec](https://github.com/openjdk/jdk/blob/master/src/java.desktop/share/classes/javax/swing/SwingWorker.java#L289) >> also says the state should be DONE after doInBackground() returns which is >> also not done. >> >> Modified the code to honour the specification. > > Prasanta Sadhukhan has updated the pull request incrementally with one > additional commit since the last revision: > > Fix src/java.desktop/share/classes/javax/swing/SwingWorker.java line 757: > 755: do { > 756: try { > 757: Thread.sleep(100); I did not look closely at the discussion in JBS about this change, but this "sleep(100)" looks broken. I do not think we can block EDT like this. ------------- PR: https://git.openjdk.org/jdk/pull/11940
