On Mon, 1 Aug 2022 09:16:41 GMT, Alan Bateman <al...@openjdk.org> wrote:

> ThreadMXBean.getThread{Cpu,User}Time is specified to return -1L when invoked 
> with the id of a virtual thread. This isn't so when running with 
> -XX:-VMContinuations (or ports without support for continuations in the VM) 
> as it returns the cpu/user time of the OS thread that that the virtual thread 
> is bound. A small oversight with JDK-8287496, and missed because our unit 
> test only exercises these methods with the id of the "current virtual 
> thread". The code path when the called with the id that is not the current 
> thread is a different code path.
> 
> The change is limited to jmm_GetThreadCpuTimeWithKind.  I didn't change 
> jmm_GetThreadCpuTimesWithKind because it seems to be unused/dead code. I'll 
> create a separate issue to look at that (it doesn't need to be 
> removed/changed for JDK 19).
> 
> The test case for this API is expanded to cover more cases where the current 
> thread is special cased in the implementation.
> 
> JDK 19 is in RDP2 so this change will require additional approval.

Marked as reviewed by kevinw (Committer).

test/jdk/java/lang/management/ThreadMXBean/VirtualThreads.java line 111:

> 109: 
> 110:     /**
> 111:      * Test that ThreadMXBean.getThreadInfo(long) with the thread id of 
> a carrier thread.

Pre-existing typo: this comment sentence looks truncated?  Or maybe just remove 
"that" and it's fine: 
"Test ThreadMXBean.getThreadInfo(long) with.."

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

PR: https://git.openjdk.org/jdk19/pull/157

Reply via email to