On Mon, 4 Dec 2023 20:25:56 GMT, ExE Boss <d...@openjdk.org> wrote:

>> When a virtual thread continues after Thread.yield it currently consumes 
>> thread's parking permit. This is an oversight, the parking permit should 
>> only be consumed when continuing after park.
>> 
>> The changes are straight-forward. The internal "RUNNABLE" state is replaced 
>> with UNPARKED and YIELDED state, effectively encoding the previous state. So 
>> for the most part, it's just replacing the usages of RUNNABLE. The 
>> additional states require refactoring tryGetStackTrace, this is the method 
>> that is used for Thread::getStackTrace when the virtual thread is unmounted. 
>> It is also changed to not not swallow the REE if the reesubmit fails 
>> (tryStackTrace has to resubmit as the task for the thread may run, or the 
>> thread unparked, while "suspended" and sampling its stack trace). The 
>> changes are a subset of larger changes in the loom repo, future PRs will 
>> propose to bring in other changes to get main line up to date.
>> 
>> For testing the existing ThreadAPI has new test cases.
>> 
>> Testing: test1-5. This includes the JVMTI tests as it maps the thread states 
>> to JVMTI thread states.
>
> src/hotspot/share/classfile/javaClasses.cpp line 1998:
> 
>> 1996:     case UNPARKED:
>> 1997:     case YIELDING :
>> 1998:     case YIELDED:
> 
> Suggestion:
> 
>     case UNPARKED :
>     case YIELDING :
>     case YIELDED :

I need to check the Hotspot style guide but I think the prevailing convention 
is no space between the label and the colon.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/16953#discussion_r1415177431

Reply via email to