On 19/12/2025 08:33, David Alayachew wrote:
And maybe it'll help if I clarify what I was saying to @Holo The Sage Wolf <mailto:[email protected]>.

Holo is saying that they like the default joiner, but adding a timeout to it takes more code than necessary. They proposed multiple different overloads, but I suggested the following overload instead.

StructuredTaskScope.open(UnaryOperator<StructuredTaskScope.Configuration> configOperator)


There are two built-in joiners that implement the policy to cancel the scope and cause join to throw if any subtask fails. One is suited to subtasks that produce results of the same type. It can collect the results and have join yield the list of results. The other is suited to subtasks that produce results of very different types and where it is more convenient to retain the Subtask returned from fork. The feedback to date on which would be the better default is inconclusive. The choice influences the return from the 1-arg open method is being discussed here, and is why it is not included in the current API.

-Alan

Reply via email to