有时当一个组件或者activity被destory()的时候要求其启动的线程也一起终止掉,我看书总结了一下有这有几种方法:
1.初始化的时候,定义启动的线程为一个守护线程,这样当主线程消亡掉的时候,其他线程也会被终止。
java代码:
//使用下面的方法,当初始化一个线程时
myThread.setDaemon(true);
myThread.start();
2.可在activity中的onstop()方法中调用以下代码。
java代码:
if(myThread != null) {
Thread dummy = myThread;
myThread = null;
dummy.interrupt();
}
3.可在线程run()方法中设置标志位。
java代码:
if(!paused) {
//do something,这是线程run方法中
}
boolean paused = false;
//可在onPause()中通过设置标志位使线程不活动,
protected void onPause() {
paused = true;
super.onPause();
}
//可在onPause()中通过设置标志位激活线程,
@Override
protected void onResume() {
super.onResume();
paused = false;
}
分享到:
相关推荐
android客户端实现断点续传功能,可实现多线程断点续传下载。实现android端断点续传下载需要服务器的支持,本demo中包含了个人写的服务器端的下载功能的demo.
多线程下载文件(支持暂停、取消、断点续传) 多线程同时下载文件即:在同一时间内通过多个线程对同一个请求地址发起多个请求,将需要下载的数据分割成多个部分,同时下载,每个线程只负责下载其中的一部分,最后将...
根据网上寻找的资料,加上自己的整合,打包的一个Android多线程下载。可以实现断点下载,暂停继续取消下载,能够显示现在已完成大小,文件大小,完成度,下载速度等。使用方法如下: public class MainActivity ...
主要为大家详细介绍了android实现多线程断点续传功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
AsyncTask_GridViewActivity 使用android自带的AsyncTask类实现 Demo_GridViewActivity 队列任务管理 线程控制 Demo_GridViewActivity方式 1:队列优先级 (如果想要listview中移动的区域优先被显示,而不是从上...
Android–多线程之Handler 前言 Android的消息传递机制是另外一种形式的“事件处理”,这种机制主要是为了解决Android应用中多线程的问题,在Android中不 允许Activity新启动的线程访问该Activity里的UI组件,...
多线程下载,包括暂停、继续下载、取消; 使用观察者模式进行针对更新,防止ListView下载进度乱串
这里使用CountDownTimer进行倒计时,其中回调函数onFinish是在倒计时终了时回调,onTick是在倒计时开始时回调,用户可以使用CountDownTimer对象的cancel方法取消倒计时。 这样做的好处:不需要使用繁琐的线程去控制...
来处理,这样把任务放入工作线程中执行,不会占用主线程的时间片,所以主线程会及时响应用户的操作,如果使用new Thread来执行任务,那么如果需要中途取消任务执行或者需要返回任务执行结果,就需要我们自己维护很多...
没有使用弱引用(android2.3以后google已经不建议使用弱引用,android2.3后强行回收软引用和弱引用,详情查看android官方文档), 更好的管理bitmap内存。FinalBitmap可以自定义下载器,用来扩展其他协议显示网络...
3.1.4 秘诀15:取消线程 45 3.1.5 秘诀16:在两个应用程序之间共享线程 46 3.2 线程之间的消息机制:handler 46 3.2.1 秘诀17:从主线程调度runnable 任务 46 3.2.2 秘诀18:使用倒数计时器 49 3.2.3 秘诀19:...
下面是一个在Android中使用定时器Timer和TimerTask的启动,停止,暂停,继续等操作的demo。 需要注意的问题主要有两点: 1、Timer和TimerTask在调用cancel()取消后不能再执行 schedule语句 2、只能在UI主线程中更新...
支持多线程下载,随时下载/暂停/取消 支持皮肤背景更换,随心换喜好的皮肤背景 支持正常模式/夜间模式切换,支持定时关闭 歌曲分类详细,按照歌手,专辑,文件夹,清晰明了 支持自定义扫描本地歌曲,默认扫描到默认...
13.1 Android组件和线程 13.1.1 活动在主线程上运行 13.1.2 广播接收程序在主线程上运行 13.1.3 服务在主线程上运行 13.1.4 ContentProvider在主线程上运行 13.1.5 单一主线程的影响 13.1.6 ...
Android手机版本更新,使用okhttp网络框架进行网络请求和文件下载操作,使用Handler线程处理progress进度的实时更新,下载之后用户进行选择安装新版本,点击手机返回键或者对话框取消按钮取消文件下载,代码简单易懂...
EventBusKotlin 用 Kotlin 简单实现了一个 EventBus ...mode 方法执行线程 @Subscriber(tag = DEFAULT_TAG, mode = ThreadMode.MAIN) private fun change2(event: XXXEvent){ textView2.text = "今
本文介绍了Android定时器Timer的停止和重启实现代码,分享给大家,具体如下: 7月份做了一个项目,利用自定义控件呈现一幅动画,当时使用定时器来控制时间,但是当停止开启时总是出现问题。一直在寻找合理的方法...
BluetoothSelector 蓝牙选择器 功能 通过回调函数执行蓝牙连接成功后和断开后的动作 支持多蓝牙设备同时连接 集成读取数据的thread,可直接在回调函数中输入... * @param bluetoothConnectCallback 连接建立和取消
当Activity/Fragment销毁时自动取消相应的所有网络请求,支持取消指定请求 异步请求响应自动切换到UI线程,摒弃runOnUiThread Application中自定义全局配置/增加系统默认配置 支持文件和图片上传/批量上传,支持同步...