Yes. You need to resume the awaiting coroutine on the thread that called await_resume, and you'd usually do that through posting to it's executor.
Alright, I think a good next step would be formalizing this in the library then. We can go ahead and call this kind of abstraction Waker or something to that effect. And then ideally this is featured in the docs. Formalizing this Waker mechanism has the benefit that the user doesn't have to think about the lifetime of the awaiting coroutine. Because Async seems to support cancellation, the awaiting coroutine can be cancelled and destroyed before the external work `post()`s the `coroutine_handle` for execution. Naively calling `.resume()` is unsafe without some form of guarantee around lifetime. - Christian