On Tue, 21 Oct 2025 10:53:19 GMT, Alan Bateman <[email protected]> wrote:
>> Updates for JEP 525. >> >> - `Joiner:onTimeout` is added with `join` method changed to invoke this >> joiner method if >> a timeout is configured and the timeout expires before or while waiting. >> The `onTimeout` >> throws `TimeoutException` or may do nothing. This allows for `Joiner` >> implementation that >> are capable of returning a result from the subtasks that complete before >> the timeout expires. >> - The `configFunction` parameter to the 3-arg `open` is changed from >> `Function<Configuration, Configuration>` to `UnaryOperator<Configuration>`. >> - `Subtask::get` and `Subtask::exception` changed to consistently throw if >> called from >> any thread before the scope owner has joined. >> - `StructuredTaskScope::join` is now specified so that it may be called >> again if interrupted. >> - The parameter on `Joiner::onFork` and `Joiner::onComplete` is changed from >> `Subtask<? extends T` to `Subtask<T>`. >> - `Joiner.allSuccessOrThrow` is changed to return a list of results instead >> of a stream of >> subtasks. `Joiner.allUntil` is changed to return a list of subtasks. >> - `Joiner.anySuccessfulResultOrThrow` is renamed to `anySuccessfulOrThrow`. >> - `Joiner.allUntil(Predicate)` is changed to allow `join` return the stream >> of all forked >> subtasks when the timeout expires. >> - `Joiner` is no longer a `@FunctionalInterface`. >> >> Most of the changes are to API docs and tests. Some links are changed to use >> double hash mark. > > Alan Bateman 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 13 additional > commits since the last revision: > > - Merge branch 'master' into JDK-8367857 > - Sync up from loom repo > - Merge branch 'master' into JDK-8367857 > - Sync up from loom repo > - Merge branch 'master' into JDK-8367857 > - Merge branch 'master' into JDK-8367857 > - Improve docs and review feedback > - Merge branch 'master' into JDK-8367857 > - Add JEP number > - Merge branch 'master' into JDK-8367857 > - ... and 3 more: https://git.openjdk.org/jdk/compare/5cf6df2e...e9ab6f18 src/java.base/share/classes/java/util/concurrent/StructuredTaskScope.java line 216: > 214: * monitoring and management purposes, or has a timeout that cancels the > scope if the > 215: * timeout expires before or while waiting for subtasks to complete. The > {@code open} > 216: * method is called with a {@linkplain UnaryOperator operator} that is > applied to the Trivially: Suggestion: * method is called with an {@linkplain UnaryOperator operator} that is applied to the ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/27392#discussion_r2454872775
