gpt4 book ai didi

android - Tasks.whenAllSuccess 是否保证我将任务传递给它的顺序?

转载 作者:行者123 更新时间:2023-12-05 00:21:20 29 4
gpt4 key购买 nike

我在 Android 应用中使用 Cloud Firestore。

我创建了 2 个查询,一个 whereLessThan和一个 whereGreaterThan有效地创建 !=询问。
我为每个单独的查询排序结果,但是当我单独运行它们时,我可能会首先返回一个或另一个,这取决于哪个更快。

当我将 2 个查询合并为 1 个,然后使用 Tasks.whenAllSuccess获取方法 1 Task并添加 1 OnSuccessListener对它来说,它会保持我通过任务的结果顺序吗?

public void loadNotes(View v) {
Task task1 = notebookRef
.whereLessThan("priority", 2)
.orderBy("priority")
.get();

Task task2 = notebookRef
.whereGreaterThan("priority", 2)
.orderBy("priority")
.get();

Task finalTask = Tasks.whenAllSuccess(task1, task2).addOnSuccessListener(new OnSuccessListener<List<Object>>() {
@Override
public void onSuccess(List<Object> objects) {
//will my results be ordered prioty 1 - 3 - 4 - 5....?
}
});
}

最佳答案

Tasks.whenAllSuccess(和其他 whenAll 方法)将按照它们传递给 whenAllSuccess 的顺序将任务的结果传递给 List 中的回调。如果您需要其他方式来获取结果,您可以使用原始 Task 对象维护一些数据结构,然后根据需要查询它们。

关于android - Tasks.whenAllSuccess 是否保证我将任务传递给它的顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50123649/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com