如何跟踪“N”个任务 - 特别是当所有N个任务都完成并且任何任务失败时。Android - 跟踪IntentService中的多个操作
例如,我有一个服务可以响应5个独特的意图从远程服务器下载5个独特的数据。我还需要一次下载全部5个数据。与其重复下载数据的代码,不如启动5个Intents来下载所有数据,从而利用各个用例。
我有的问题是我需要知道什么时候所有5次下载尝试都已经完成。我无法跟踪服务中进行了哪些下载,因为我正在使用IntentService。 BroadcastReceivers也存在同样的问题,因为它们只存在onReceive方法的持续时间。
我在看sendOrderedBroadcast,但是这需要每次下载尝试都有一个BroadCastReceiver。我也有read结果是在发送完成时创建的,但不是因此在下载完成时会创建吗?
“如果resultReceiver参数为非空它指定一个 广播接收器,其的onReceive()的 发送有序广播意向完成当方法将被调用。”
也许我可以尝试使用sendOrederedBroadcast并在传递的Intent中封装某种计数器?
如果您要管理多个线程,使用线程池执行者,而不是也许能派上用场