关于kotlin协同程序的基本Api的问题

关于kotlin协同程序的基本Api的问题,kotlin,Kotlin,Kotlin可以使用createCoroutine()函数来创建协同路由。在对这个函数的描述中,我一句话也听不懂 要开始执行创建的协同程序,请对返回的[Continuation]实例调用resume(Unit) 我不知道我的理解是否正确。我认为在调用resume()函数之前,不会执行协同程序体,而只存在于Continuation对象中。调用resume()函数后,将执行suspend lambda表达式并返回结果 这是正确的理解吗 非常感谢您的回答我相信这是正确的。lambda的结果不会返回给您

Kotlin可以使用createCoroutine()函数来创建协同路由。在对这个函数的描述中,我一句话也听不懂

要开始执行创建的协同程序,请对返回的[Continuation]实例调用
resume(Unit)

我不知道我的理解是否正确。我认为在调用resume()函数之前,不会执行协同程序体,而只存在于Continuation对象中。调用resume()函数后,将执行suspend lambda表达式并返回结果

这是正确的理解吗


非常感谢您的回答

我相信这是正确的。lambda的结果不会返回给您,而是传递给下一个延续(若指定)


createCoroutine()
Continuation
是一种非常低级的东西,通常您不会直接使用它们。对于从协同程序上下文外部启动协同程序,有高级替代方案。如果您不确定是否真的需要使用
createCoroutine()
,那么您可能正在寻找:,然后是
launch()
或(但请阅读
GlobalScope
注释)。

公平地说,这并不是coroutine的“基本API”。这是一个非常低级的API,作为协同程序的用户,您几乎不应该使用它。好的,谢谢您的帮助