Android 服务、线程和 UI

标签 android multithreading service

我有一个启动服务的 ListActivity。在此服务中,我启动了一个线程,该线程对多达 800 个联系人进行一些数据库查询,这似乎有时会减慢甚至挂起 UI。我应该改用 AsyncTask 吗?处理此问题的正确方法是什么?

最佳答案

通常服务在 UI-Thread 上运行。 但是您曾提到您在服务中使用线程,这意味着您的工作在后台进行,因此不可能阻止 UI-Thread。

我认为您已经为更新 UI 编写了一些线程外的代码,这可能会阻塞您的 UI。

您可以使用 AsyncTask 而不是使用线程启动服务和更新,因为 asynctask 正在做与后台线程可以做的相同的事情。

关于Android 服务、线程和 UI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7226028/

相关文章:

Grails 独立 JAR 作为 linux 服务配置内存参数

android - EditText LiveData 双向绑定(bind)

python - 线程队列工作示例

c++ - 区域搜索中的点

c++ - 在 Qt 中收集线程

android - 何时以及为何需要 PARTIAL_WAKE_LOCK?

android - 我可以在依赖它的 APK 中使用 Android AAR 的资源吗?

java - 操作失败 : gradle dependencies CircleCi

android - AdMob - 禁用请求 onPause()

Powershell,foreach 的分页输出