android - 使用生命周期问题

标签 android multithreading android-service lifetime

我目前有一个生成的线程,它要么从队列中拉出下一个命令并执行它,要么休眠一会儿然后重试。但是,如果队列中没有更多命令并且应用程序中没有更多 Activity ,我不希望它运行。

我的问题是我应该调查哪条路线,哪些路线可能被其他人采用?

  1. 重构服务以仅在命令进入时处理它们,而不是生成线程
  2. 我的线程中有第三个条件(如果 !activityCount = 0 停止线程)

或者,我是否弄错了,如果没有更多的 Activity 绑定(bind)到它,android 可以自动终止我的线程?

最佳答案

有一种方法可以创建“自动”停止的服务:参见 Bound Services开发指南中的页面:

A bound service typically lives only while it serves another application component and does not run in the background indefinitely.

关于android - 使用生命周期问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5299516/

相关文章:

android - RxJava 缓存网络调用

android - 如何使文本在 TextView 背景上居中

java - 什么是蓝牙 uuid?我怎样才能得到它?

python - 如何一次运行最多 10 个线程?

vb.net - 从vb.net Web服务中运行线程

android在fragment中加载sqlite数据

c - 这个同步算法是如何工作的?

android - 在更改不同 fragment 时将 webview 状态保存在 fragment 中

android - 如果 Android 需要更多内存,它会决定放弃什么?

Android - 每 1 分钟 toast 消息