On Fri, 23 Sep 2022 13:57:56 GMT, Alan Bateman <al...@openjdk.org> wrote:
>> Degrade Thread.suspend/resume to throw UOE unconditionally. >> >> Another step in the removal of this deadlock prone mis-feature from the >> user-facing API. Thread.suspend/resume have been deprecated since JDK 1.2 >> (1998) and terminally deprecated since Java 14. ThreadGroup.suspend/resume >> were degraded to throw UOE in Java 19. As of Java 19, Thread.suspend/resume >> continues to work for platform threads but throws UOE for virtual threads. >> The next step is to degrade both methods to throw UOE for all threads. A >> corpus search of 19M classes in 113k JAR files found only 22 classes using >> these methods so this change is unlikely to be disruptive. >> >> The change requires some minor adjustments to the JVM TI and JDWP >> specifications, and a minor update to the JDI docs. >> >> Leonid Mesnik is working on >> [PR10351](https://github.com/openjdk/jdk/pull/10351) to remove/replace the >> last few usages of Thread.suspend/resume from the hotspot tests (most of >> these can use JVMTI SuspendThread/ResumeThread). > > Alan Bateman has updated the pull request with a new target base due to a > merge or a rebase. The pull request now contains ten commits: > > - Update DegradedMethodsThrowUOE to test Thread.stop > - Merge > - Update modifyThread and modifyThreadGroup targets > - Merge > - Fix typo in test comment > - Keep link to threadPrimitiveDeprecation.html > - Merge > - Tests > - Initial commit Leonid has integrated JDK-8289607 to remove the last usages of Thread.suspend/resume from the hotspot tests so I've refreshed this PR to drop the temporary excluding of these tests. ------------- PR: https://git.openjdk.org/jdk/pull/10324