RFR: 8301341: LinkedTransferQueue does not respect timeout for poll() [v6]

Andrey Turbanov aturbanov at openjdk.org
Mon Jul 17 14:49:19 UTC 2023


On Thu, 13 Jul 2023 19:21:01 GMT, Doug Lea <dl at openjdk.org> wrote:

>> This now uses Thread.isVirtual to distinguish spin vs immediate block cases, enabling re-introduction of spin control from the previous version, removing anomalies like this one.
>
> 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 seven additional commits since the last revision:
> 
>  - Merge branch 'openjdk:master' into JDK-8301341
>  - Simplify contention handling; fix test
>  - Fix inverted test assert; improve internal documentation; simplify code
>  - Merge branch 'openjdk:master' into JDK-8301341
>  - Overhaul LTQ and SQ to use common blocking and matching mechanics
>  - Merge branch 'openjdk:master' into JDK-8301341
>  - Use Thread.isVirtual to distinguish spin vs immediate block cases

src/java.base/share/classes/java/util/concurrent/SynchronousQueue.java line 232:

> 230:      * The transferer. (See below about serialization.)
> 231:      */
> 232:     private transient final Transferer<E> transferer;

let's use blessed modifiers order
Suggestion:

    private final transient Transferer<E> transferer;

src/java.base/share/classes/java/util/concurrent/SynchronousQueue.java line 234:

> 232:     private transient final Transferer<E> transferer;
> 233: 
> 234:     private transient final boolean fair;

nit
Suggestion:

    private final transient boolean fair;

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

PR Review Comment: https://git.openjdk.org/jdk/pull/14317#discussion_r1265479543
PR Review Comment: https://git.openjdk.org/jdk/pull/14317#discussion_r1265480051


More information about the core-libs-dev mailing list