Hacker News new | ask | show | jobs
by gsliepen 637 days ago
It would be nice if there was a function to wait for tasks and to return the results at the same time, so that you could write something like:

    auto [a, b] = co_await coros::wait_tasks(fib(n - 1), fib(n - 2));
    return a + b;
2 comments

Thank you for your feedback.

I understand that working with tasks and retrieving values can feel a bit clunky. The main reason I've structured it this way is that individual tasks are RAII objects, and their coroutine state is destroyed once they go out of scope. However, I could modify the awaitable returned from wait_tasks to store tasks, and then return values directly to the user. This could definitely be a more ergonomic overload for the function. I'll look into it!

If you need this interface, use threads.