This type, unlike future never returns a value and is assumed to never end. Ending a task will change it's state to blocked_by::completion and resuming it will call the noop_coroutine_handle doing nothing. The sync_wait API will be removed with only resume available.