0

我有一个IntentService接收数据并将其写入本地数据库的设备。然后要处理 DB 数据。目前我正在做这一切的onHandleIntent()方法。

问题:数据没有立即存储在数据库中。但它应该是。而是在第一个数据块完成后处理下一个数据块。

数据块将被同步处理。

我的解决思路:

1)我可以使用 aService而不是IntentService. 但是,我想避免这种情况,因为我想避免处理异步的东西。

2)我可以使用两个IntentServices:第一个接受数据并存储它。第二个读取并处理它。

3)我可以产生一个WorkerThread(或使用一个ExecutorService)来处理数据。这是我想走的路。

现在,我的问题是:IntentServiceIntentService离开它的onHandleIntent()方法时产生的线程会发生什么?有什么问题可以预料吗?应该使用选项 2) 还是 1)?

4

1 回答 1

0

Thread生成的 s与对象 (pid)IntentService的生命周期相关联。IntentService

如果处理应该是同步的,你应该选择选项 2。

于 2014-12-01T08:20:35.220 回答