Kotlin 在科特林等待什么回报?

Kotlin 在科特林等待什么回报?,kotlin,kotlin-coroutines,Kotlin,Kotlin Coroutines,我在学习科特林的合作项目。代码A将得到结果A 我知道async用于启动计算某些结果的协同程序。结果由Deferred.的实例表示 那么val one将延迟返回,但是one将等待什么返回?似乎1.await会返回Int,对吗 代码A 结果A 根据kotlin文件 async启动一个单独的协程,它是一个轻量级线程,与所有其他协程并行工作 async返回一个延迟的-一个轻量级的非阻塞未来,表示以后提供结果的承诺 您可以使用.wait对延迟值进行处理以获得其最终结果,但延迟值也是一个作业,因此您可以在需

我在学习科特林的合作项目。代码A将得到结果A

我知道async用于启动计算某些结果的协同程序。结果由Deferred.的实例表示

那么val one将延迟返回,但是one将等待什么返回?似乎1.await会返回Int,对吗

代码A

结果A

根据kotlin文件

async启动一个单独的协程,它是一个轻量级线程,与所有其他协程并行工作

async返回一个延迟的-一个轻量级的非阻塞未来,表示以后提供结果的承诺

您可以使用.wait对延迟值进行处理以获得其最终结果,但延迟值也是一个作业,因此您可以在需要时取消它

比方说

val one = async { Fun() } 
//one is type of Deferred 
val mystring = one.await()
//mystring is type of string

fun Fun(): String{
    return "hello"
}
根据kotlin文件

async启动一个单独的协程,它是一个轻量级线程,与所有其他协程并行工作

async返回一个延迟的-一个轻量级的非阻塞未来,表示以后提供结果的承诺

您可以使用.wait对延迟值进行处理以获得其最终结果,但延迟值也是一个作业,因此您可以在需要时取消它

比方说

val one = async { Fun() } 
//one is type of Deferred 
val mystring = one.await()
//mystring is type of string

fun Fun(): String{
    return "hello"
}
你只需要看看:

因此,当调用一个延迟函数时,它确实会返回Int;当被调用时,比如说延迟,它将返回您非常有用的类。

您只需查看:


因此,当调用一个延迟函数时,它确实会返回Int;当被调用时,比如说,一个Deferred,它将返回您非常有用的类。

您的措辞val one将返回Deferred有点奇怪。我宁愿说一个是Deferred的实例,或者一个是Deferred类型。除此之外,您的示例似乎回答了您自己的问题;一个是Deferred类型,而不仅仅是Deferred。您的措辞val one将返回Deferred有点奇怪。我宁愿说一个是Deferred的实例,或者一个是Deferred类型。除此之外,您的示例似乎回答了您自己的问题;其中一个类型是Deferred,而不仅仅是Deferred.fun在本例中不必是suspendfun在本例中不必是suspend
val one = async { Fun() } 
//one is type of Deferred 
val mystring = one.await()
//mystring is type of string

fun Fun(): String{
    return "hello"
}
// in Deferred<T>
abstract suspend fun await(): T