On Mon, 4 Dec 2023 13:56:55 GMT, Doug Lea <[email protected]> wrote:
>> This update cascades timeouts to trim subsequent workers after the first
>> keepAlive inactive period.
>
> Doug Lea has updated the pull request with a new target base due to a merge
> or a rebase. The incremental webrev excludes the unrelated changes brought in
> by the merge/rebase. The pull request contains 10 additional commits since
> the last revision:
>
> - Merge branch 'openjdk:master' into JDK-8319662
> - Remove unnecessary re-interrupt
> - Merge branch 'openjdk:master' into JDK-8319662
> - Reduce oversignalling and contention; add test
> - Revert 2 lines in method scan
> - Merge branch 'openjdk:master' into JDK-8319662
> - Split up method awaitWork; other associated changes.
> - Merge branch 'openjdk:master' into JDK-8319662
> - tweak cascades; reinstate an @Contended; resolve JDK-8319498
> - Support cascading idle timeouts
src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java line 1226:
> 1224: int nsteals; // number of steals from other queues
> 1225: @jdk.internal.vm.annotation.Contended("w")
> 1226: volatile int parking; // nonzero if parked in awaitWork
@DougLea Nice. Seems preferable not to have to track another volatile reference
(parker) and instead going the route you did with a marker + owner.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/16725#discussion_r1415930663