是否有必要访问AsyncTask中的SQLiteDatabase?

时间:2012-10-23 18:11:00

标签: android android-asynctask android-sqlite

始终从AsyncTask访问SQLiteDatabase是否有必要甚至是好的做法?

从UI线程执行此操作似乎不会导致任何问题,并且实现起来要简单得多。

3 个答案:

答案 0 :(得分:4)

这是一个很好的做法。数据库操作并不总是很快,因此Android建议在后台线程(AsyncTask,Runnable等)上执行所有数据库和网络操作。

答案 1 :(得分:4)

建议不要从主应用程序线程执行IO,但是,必须使用AsyncTask来完成。

您还有其他选项可以退出主线程,其中一些选项包括Loader FrameworkIntentServiceExecutors

答案 2 :(得分:3)

不,没有必要总是在另一个线程中访问您的数据库。这取决于需要多长时间。通常读/写速度快,不会减慢UI速度,也不需要其他线程。但是,当执行像清理等冗长的操作时,是的,在另一个线程中执行它们是个好主意。