On Fri, 20 Oct 2023 21:26:51 GMT, Doug Lea <[email protected]> wrote:
>> Addresses Jdk 8288899 : java/util/concurrent/ExecutorService/CloseTest.java
>> failed with "InterruptedException: sleep interrupted" and related issues.
>>
>> This is a major ForkJoin update (and hard to review -- sorry) that finally
>> addresses incompatibilities between ExecutorService and ForkJoinPool (which
>> claims to implement it), with the goal of avoiding continuing bug reports
>> and incompatibilities. Doing this required reworking internal control to use
>> phaser/seqlock-style versioning schemes (affecting nearly every method) that
>> ensure consistent data structures and actions without requiring global
>> synchronization or locking on every task execution that would massively
>> degrade performance. The previous lack of a solution to this was the main
>> reason for these incompatibilities.
>
> Doug Lea has updated the pull request with a new target base due to a merge
> or a rebase. The pull request now contains 101 commits:
>
> - Merge branch 'openjdk:master' into JDK-8288899
> - Merge master
> - Ensure liveness for InterruptibleTasks
> - Merge branch 'openjdk:master' into JDK-8288899
> - More cleanup
> - Merge branch 'openjdk:master' into JDK-8288899
> - better window encoding
> - Merge branch 'openjdk:master' into JDK-8288899
> - cleanup
> - Merge branch 'openjdk:master' into JDK-8288899
> - ... and 91 more: https://git.openjdk.org/jdk/compare/a1a62d99...84f06bcf
src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java line 3285:
> 3283:
> 3284: /**
> 3285: * Uninterrupible version of {@code InvokeAll}. Executes the given
Typo: "InvokeAll" vs "invokeAll".
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/14301#discussion_r1370761609