If a pinned virtual thread waits in Object.wait and then blocks attempting to reenter then the jdk.VirtualThreadPinned event is recorded too early. The event duration should include both the waiting time and the time blocked to reenter.
In addition, it's possible for two events to be recorded when a pinned virtual thread in Object.wait is interrupted and blocks on reenter. One for the Object.wait, the other for the contended monitor enter.
In addition, it's possible for two events to be recorded when a pinned virtual thread in Object.wait is interrupted and blocks on reenter. One for the Object.wait, the other for the contended monitor enter.
- links to
-
Commit(master) openjdk/jdk/fbbc7c35
-
Review(master) openjdk/jdk/22718