On Wed, 7 Jun 2023 15:12:40 GMT, Alan Bateman <al...@openjdk.org> wrote:
> 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 This pull request has now been integrated. Changeset: 97df6cf5 Author: Alan Bateman <al...@openjdk.org> URL: https://git.openjdk.org/jdk/commit/97df6cf55ab66552612bf0a2eefb83c0783fd586 Stats: 6 lines in 1 file changed: 1 ins; 0 del; 5 mod 8309545: Thread.interrupted from virtual thread needlessly resets interrupt status Reviewed-by: rpressler, dholmes, jpai ------------- PR: https://git.openjdk.org/jdk/pull/14361