> Now that Thread.stop has been degraded to throw > `UnsupportedOperationException` (JDK-8299610) the only direct source of async > exceptions is from JVMTI `StopThread`. We can remove the `JVM_StopThread` > code, remove the `stillborn` field from `java.lang.Thread` and its associated > accesses from the VM, and we can stop special-casing `ThreadDeath` handling > (as was done for the JDK code as part of JDK-8299610). > > Note that JVMTI `StopThread` can only act on a thread that is alive, so it is > no longer possible to stop a thread before it has been started. > > Also note that there is a change in behaviour for JNI `ExceptionDescribe` as > it no longer ignores `ThreadDeath` exceptions (not that it was ever specified > to ignore them, it simply mirrored the behaviour of the default > `UncaughtExceptionHandler` in `java.lang.ThreadGroup` - which also no longer > ignores them so the mirroring behaviour remains the same). > > Testing: tiers 1-3
David Holmes has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 16 commits: - Merge branch 'master' into 8293592-JVM_StopThread - Removal all special handling of ThreadDeath. - Remove all references to the stillborn field - Initial commit: remove JVM_StopThread - Merge - Updates to Java Thread Primitive Deprecation page - Repalce "it" with "victim thread" - Merge - Revert test/langtools/ProblemList.txt as jshell tests no longer rely on Thread.stop - become -> became in javadoc - ... and 6 more: https://git.openjdk.org/jdk/compare/3675f4c2...4eb07903 ------------- Changes: https://git.openjdk.org/jdk/pull/10400/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=10400&range=01 Stats: 208 lines in 18 files changed: 19 ins; 146 del; 43 mod Patch: https://git.openjdk.org/jdk/pull/10400.diff Fetch: git fetch https://git.openjdk.org/jdk pull/10400/head:pull/10400 PR: https://git.openjdk.org/jdk/pull/10400