Conversation
I am not sure whether this is the right time to add That said, this PR contains my current implementation so that we can evaluate the API and how it should eventually compose with cancellation. :D |
|
Tested Two points:
Sorry if I misunderstood, or if this was already explained and I missed it. |
While I don't insist on MSRV and agree that we can always bump the MSRV when needed, we may do it in a separate PR and decide the next MSRV with certain reason. |
@QwQBiG Thanks for catching both issues!
|
|
Thanks for addressing both points and adding the regression test! Keeping the registration active until Agreed that any MSRV bump should be handled in a separate PR with a clear rationale. :P |
tisonkun
left a comment
There was a problem hiding this comment.
This doesn't seem like a common primitive. When would you need such a primitive?
I may consider this join-alike primitive a subset of https://docs.rs/futures-concurrency.
While I may consider to include some functions of futures-concurrency in asyncband, it doesn't look like in this form:
- Why close?
- Why all tasks must output the same type
T?
I may expect some real world use cases for motivation and would consider if we can have a more generic/unified form as futures-concurrency has already designed.
Summary
This PR implements the first
TaskGroupproposed in the issue discussion.Issue: #272
The design rationale and alternatives are discussed in this issue comment.
Main API
Scope of this PR
This version intentionally does not provide:
try_join(),race(), orrace_ok()result policies