RFR: 8314759: VirtualThread.parkNanos timeout adjustment when pinned should be replaced

Daniel Fuchs dfuchs at openjdk.org
Thu Aug 24 11:55:26 UTC 2023


On Wed, 23 Aug 2023 16:41:23 GMT, Alan Bateman <alanb at openjdk.org> wrote:

> If yielding fails due to the pinning then VirtualThread.parkNanos parks on the carrier thread with the remaining time. The calculation of the remaining time needs to be replaced so that it obviously uses the difference between the start and end time in the calculation. The current code isn't correct for cases where System.nanoTimes return a negative value or when parking for durations close to Long.MAX_VALUE (292 years). The change isn't really testable so there aren't any test changes included.

LGTM

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

Marked as reviewed by dfuchs (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/15405#pullrequestreview-1593413969


More information about the core-libs-dev mailing list