Thread.interrupted is used to "get and clear" the current thread's interrupt 
status. When called from a virtual thread, the current implementation always 
clears the carrier's interrupt status. There is no need to do this when the 
interrupt status is not set, it can just read the interrupt status and return 
false in that case.

This was found by Sergey Kuksenko when comparing platform vs. virtual thread 
performance. Once CODETOOLS-7903476 is in a released version of JMH then we can 
start to accumulate benchmarks that execute in virtual threads.

Testing: tier1-5

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

Commit messages:
 - Merge
 - Initial commit

Changes: https://git.openjdk.org/jdk/pull/14361/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=14361&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8309545
  Stats: 6 lines in 1 file changed: 1 ins; 0 del; 5 mod
  Patch: https://git.openjdk.org/jdk/pull/14361.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/14361/head:pull/14361

PR: https://git.openjdk.org/jdk/pull/14361

Reply via email to