RFR: 8287496: Alternative virtual thread implementation that maps to OS thread [v2]

Mandy Chung mchung at openjdk.java.net
Tue May 31 23:48:34 UTC 2022


On Tue, 31 May 2022 15:39:39 GMT, Alan Bateman <alanb at openjdk.org> wrote:

>> This patch adds an alternative virtual thread implementation where each virtual thread is backed by an OS thread. It doesn't scale but it can be used by ports that don't have continuations support in the VM. Aside from scalability, the lack of continuations support means:
>> 
>> 1. JVM TI is not supported when running with --enable-preview (the JVM TI spec allows for this) 
>> 2. jshell --enable-preview can't be used (as jshell uses the debugger APIs and so needs JVM TI)
>> 
>> The VM option "VMContinuations" is added as an experimental option so it can be used by tests. A number of tests are changed to re-run with -XX:-VMContinuations. A new jtreg property is added so that tests that need the underlying VM support to be present can use "@requires vm.continuations" in the test description. A follow-up change would be to add "@requires vm.continuations" to the ~70 serviceability/jvmti/vthread that run with preview features enabled.
>
> Alan Bateman has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Allowing linking without intrinsic stub, contributed-by: rehn

Looks okay to me.

src/java.management/share/classes/sun/management/ThreadImpl.java line 586:

> 584: 
> 585:     /**
> 586:      * Returns the ThreadInfo objects from the given array that coresspond to platform

typo: coresspond -> correspond

src/java.management/share/classes/sun/management/Util.java line 92:

> 90: 
> 91:     /**
> 92:      * Returns true if the given Thread is a virutal thread.

typo: virutal -> virtual

this typo appears in other comments too.

-------------

Marked as reviewed by mchung (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/8939


More information about the core-libs-dev mailing list