Kotlin 如何对同一端点并行进行多个API调用,并将所有响应合并到一个输出数组中?
目前在我的Kotlin代码中,我有一个用户数组,我执行for循环,对每个用户的信息发出GET请求,然后将他们的信息添加到可变列表中。我观察列表并在新用户信息发布到它时更新我的UI 但我想知道我如何能同时执行所有用户调用,并等待最终结果,同时发布所有UI?您可以使用语法启动请求,然后对它们进行处理(请注意,一旦任何延迟失败,它将立即失败) 比如:Kotlin 如何对同一端点并行进行多个API调用,并将所有响应合并到一个输出数组中?,kotlin,retrofit,rx-java,kotlin-coroutines,Kotlin,Retrofit,Rx Java,Kotlin Coroutines,目前在我的Kotlin代码中,我有一个用户数组,我执行for循环,对每个用户的信息发出GET请求,然后将他们的信息添加到可变列表中。我观察列表并在新用户信息发布到它时更新我的UI 但我想知道我如何能同时执行所有用户调用,并等待最终结果,同时发布所有UI?您可以使用语法启动请求,然后对它们进行处理(请注意,一旦任何延迟失败,它将立即失败) 比如: val one=async{dosomethinguselfone()} val two=async{dosomethinguselftwo()} va
val one=async{dosomethinguselfone()}
val two=async{dosomethinguselftwo()}
val result=awaitAll(一,二)//将为您提供一个结果列表
因此,在您的情况下,您可以在用户上启动async
操作
例如:
Roman Elisarov关于结构化并发的博客:(关于并行分解的部分)您可以使用语法启动请求,然后再启动请求(请注意,一旦任何延迟失败,它将立即失败)
比如:
val one=async{dosomethinguselfone()}
val two=async{dosomethinguselftwo()}
val result=awaitAll(一,二)//将为您提供一个结果列表
因此,在您的情况下,您可以在用户上启动async
操作
例如:
Roman Elisarov关于结构化并发的博客:(关于并行分解的部分)