2 sinat 26761191 sinat_26761191 于 2017.01.16 13:22 提问

android 如何避免 系统关闭你的线程

现在遇到一个情况,希望自己的应用中的某一个线程能一直运行,不被系统关闭

4个回答

stone_you
stone_you   Rxr 2017.01.16 14:18
已采纳

把线程放在Service里面启动,然后思考Service如何保活就可以了。一般来说除非你一直在前台,不然不可能避免被杀死的,这是android系统决定的,当系统资源不足时会杀死一些后台进程去释放资源的。一般来说不可能存在一直不死的,你能做到在它被杀死的时候,再把服务拉起来就好了。

qq_33750826
qq_33750826   2017.01.16 13:34

一看你就是个菜鸟,线程隶属于进程,想要线程一直运行,就必须他所在的进程一直运行,这个问题涉及到进程间通信以及进程的优先级之类的只是,不是可以用言语说的清的

yd992594492
yd992594492   2017.01.16 13:34

线程在做事就不会被关闭,或者可以wait,不过不推荐

baidu_26611019
baidu_26611019   2017.01.21 09:44

在你的run()中加入一个
while(true){if(flag){
//你的代码
}}

flag用来判断是否执行里面的代码,while(true)保证了线程一直处于运行状态

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
如何防止按钮多次点击开启多个线程
/** 线程 防止按钮多点 **/ new Thread() {  @Override public void run() { super.run(); try { sleep(200); } catch (InterruptedException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); ...
Activity中控制线程和防止线程重复开启的解决办法
在android开发中,Activity里面的子线程在Activity  onDestroy()后并没有销毁,而是一直在运行。解决办法有两种,一种通过service开启线程,并控制线程周期。第二种是本文要讲的:通过控制变量控制线程的运行。 具体是定义一个boolean全局变量threadRun,由这个变量控制线程中的//do something 循环,想执行线程功能时将threadRun=tru
Android内存泄漏(线程造成的内存泄漏与资源未关闭造成的内存泄漏)
Android内存泄漏(线程造成的内存泄漏和资源未关闭造成的内存泄漏)
解决手机关闭屏幕线程挂起问题
最近在做一个关闭屏幕60分钟后自动下载的需求,整个模块已经竣工,测试发现在充电状态下没有任何问题可以直接下载,但是在非充电状态下自动下载失效了,这时首先要观察日志看看到底是什么情况,小插曲平时都是usb debug看日志,现在的状态是不插usb自然无法通过这个来看日志,还好android就是nb提供wifi连接adb命令来查看日志,前提是手机和pc必须在同一个局域网,具体命令如下: 1、
Android 中如何关闭线程
Android 中如何关闭线程               在android中开启的线程用Thread.stop()来关闭是不会真正关闭的,当我们再次start线程的时候,会产生异常:Thread is already started. 针对这个问题可以在线程的run方法里,加一个判断标志。例如:               class TestThread extends Thre
Android 控制线程的开始关闭
在Android中有时我们会遇到类似这样的问题,我要绘制一个曲线图,但是我想让它可以被暂停和继续。首先,绘图肯定得用到多线程的知识。java的Thread类中自带suspend和resume两个方法来实现线程的暂停和恢复,可惜的是,现在已经不被建议使用了,而且,就算你用了,也没什么卵用,根本没效果,哈哈(这就很尴尬了!) 网上查了不少资料(在这里感谢网上一些博客的指导了),经过修改,哈,保证绝对
Android正确关闭线程
一般不使用这种方法关闭线程,Thread.interrupt() 较暴力,虽然进行 mThread.interrupt(); mThread = null; 终止了线程,但查看源码我们发现: interrupt() 使线程接受一个终端请求,接下来的线程操作有线程当前状态决定。 线程在 wait(), join() 或 sleep() 状态下,它将被唤醒,并被清除状态,让后会收到一个InterruptedException的 Exception,线程中断 Exception 处理.结束工作。 线程 blo
使用monkey测试时,一个控制WiFi状态的多线程类
本人在使用monkey进行收集测试的时候,经常会遇到WiFi被关闭,飞行模式被打开的问题,虽然monkey也要进行无网测试,但在无人值守使用monkey测试的时候,还是需要网络状态稳定一些,经常不断尝试,终于找到了解决办法。 思路如下,写了一个APP,专门用来切换网络状态,只是用来切换网络状态而已。然后需求是每分钟检查一次WiFi状态是否跟预期一致,每十分钟切换一次预期状态,已达到交叉测试的效果
android利用Handler开启线程和关闭线程
android利用Handler开启线程和关闭线程直接上代码:private Handler mHandler=new Handler(); private String mPassword; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
[Android实例] 销毁activity时注意关闭线程
注意:自己开的线程并不会自动随Activity的destroy而关闭,所以必须手动去关闭自己开的线程或者通过boolean的方式让自己开的线程结束运行。自己开的线程有for循环的要更加注意。 废话不说,上例子。 package com.zsh; import android.app.Activity;   import android.os.Bundle;   import and