我正在编写一个使用Google的Volley API执行一系列请求的应用。问题是我不知道请求何时完成。在进一步行动之前,我需要知道请求是否已经完成。我不能只是等待一段时间使用while循环或sleep / wait方法,因为它似乎暂停正在执行请求的线程。显然,请求有onResponse回调,我可以用它来标记单个请求何时完成。但我有一个生成多个请求的活动,我希望该活动处于待机状态,直到所有请求都被处理完毕。就像我说的那样,我不能简单地等待/睡眠,因为这会让请求队列进入睡眠状态。我是否需要编写一个监控请求的服务?我真的不确定如何解决这个问题。
P.S。我正在使用一个描述here的单例请求队列。
答案 0 :(得分:-1)
如果请求不需要连续完成,您可以考虑使用Java CountDownLatch
来完成此操作。请参阅此处的答案:How is CountDownLatch used in Java Multithreading?了解更多详情。