如何:在Kotlin中触发并忘记异步协程

我一直在阅读Kotlin的共同例程,但没有找到具体问题的答案。

假设我想遍历一个为每个元素进行API调用的集合(在这种情况下将文件推送到Amazon S3)。 我希望这些调用由异步协程来处理,以免在等待时阻塞底层线程。

我不需要来自请求的返回值,仅用于记录异常。

我将如何创建一个“fire and forget”异步协程来完成这些请求之一?


也许kotlinx.coroutines#launch或kotlinx.coroutines#async满足您的需求。 举些例子:

launch(CommonPool) {
    for(item in collection){
      val result = apiCall(item);
      log(result);
    }
}

要么

for(item in collection){
    launch(CommonPool) {
      val result = apiCall(item)
      log(result)
    }
}
链接地址: http://www.djcxy.com/p/53257.html

上一篇: How to: fire and forget async coroutines in Kotlin

下一篇: What happens if there are no IO threads to handle async result?