On 24/08/2025 14:11, Atakan Serin wrote:
Hi,

One experience using Structured Concurrency:

When there is a timeout, even the succeded subtasks throws illegal state exception, I guess due to the fact that owner is not joined.

The join method can't throw TimeoutException and return a result at the same time. Also the SO post is using ShutdownOnFailure but doesn't want to shutdown when a subtask fails.

For the example then using STS directly and having a subtask shutdown the scope should work, e.g.

scope.fork(() -> {
    Thread.sleep(2000);
    scope.shutdown();
    return null;
});

So no joinUntil or TimeoutException to deal with.

The topic of "give me what you got" before some deadline or timeout would be a bit easier in the upgraded API with a Joiner factory method. We need to see if this case is common enough to justify that.

-Alan


Reply via email to