`
wodamazi
  • 浏览: 1417581 次
文章分类
社区版块
存档分类
最新评论

Android 取消线程的方法

 
阅读更多

  有时当一个组件或者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断点续传_多线程下载demo

    android客户端实现断点续传功能,可实现多线程断点续传下载。实现android端断点续传下载需要服务器的支持,本demo中包含了个人写的服务器端的下载功能的demo.

    android实现多线程下载文件(支持暂停、取消、断点续传)

    多线程下载文件(支持暂停、取消、断点续传) 多线程同时下载文件即:在同一时间内通过多个线程对同一个请求地址发起多个请求,将需要下载的数据分割成多个部分,同时下载,每个线程只负责下载其中的一部分,最后将...

    Android多线程断点下载jar包

    根据网上寻找的资料,加上自己的整合,打包的一个Android多线程下载。可以实现断点下载,暂停继续取消下载,能够显示现在已完成大小,文件大小,完成度,下载速度等。使用方法如下: public class MainActivity ...

    android实现多线程断点续传功能

    主要为大家详细介绍了android实现多线程断点续传功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    android 网络应用轻量框架-多线程管理-高效缓存-设计模式

    AsyncTask_GridViewActivity 使用android自带的AsyncTask类实现 Demo_GridViewActivity 队列任务管理 线程控制 Demo_GridViewActivity方式 1:队列优先级 (如果想要listview中移动的区域优先被显示,而不是从上...

    Android Handler多线程详解

    Android–多线程之Handler 前言  Android的消息传递机制是另外一种形式的“事件处理”,这种机制主要是为了解决Android应用中多线程的问题,在Android中不 允许Activity新启动的线程访问该Activity里的UI组件,...

    Android ListView 多线程下载 观察者模式更新

    多线程下载,包括暂停、继续下载、取消; 使用观察者模式进行针对更新,防止ListView下载进度乱串

    Android 中不用线程如何实现倒计时

    这里使用CountDownTimer进行倒计时,其中回调函数onFinish是在倒计时终了时回调,onTick是在倒计时开始时回调,用户可以使用CountDownTimer对象的cancel方法取消倒计时。 这样做的好处:不需要使用繁琐的线程去控制...

    详解Android中用于线程处理的AsyncTask类的用法及

    来处理,这样把任务放入工作线程中执行,不会占用主线程的时间片,所以主线程会及时响应用户的操作,如果使用new Thread来执行任务,那么如果需要中途取消任务执行或者需要返回任务执行结果,就需要我们自己维护很多...

    Android 常用六大框架

    没有使用弱引用(android2.3以后google已经不建议使用弱引用,android2.3后强行回收软引用和弱引用,详情查看android官方文档), 更好的管理bitmap内存。FinalBitmap可以自定义下载器,用来扩展其他协议显示网络...

    android开发秘籍

    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的启动,停止,暂停,继续等操作

    下面是一个在Android中使用定时器Timer和TimerTask的启动,停止,暂停,继续等操作的demo。 需要注意的问题主要有两点: 1、Timer和TimerTask在调用cancel()取消后不能再执行 schedule语句 2、只能在UI主线程中更新...

    Android版‘音乐一点通’音乐播放器源代码

    支持多线程下载,随时下载/暂停/取消 支持皮肤背景更换,随心换喜好的皮肤背景 支持正常模式/夜间模式切换,支持定时关闭 歌曲分类详细,按照歌手,专辑,文件夹,清晰明了 支持自定义扫描本地歌曲,默认扫描到默认...

    精通ANDROID 3(中文版)1/2

    13.1 Android组件和线程  13.1.1 活动在主线程上运行  13.1.2 广播接收程序在主线程上运行  13.1.3 服务在主线程上运行  13.1.4 ContentProvider在主线程上运行  13.1.5 单一主线程的影响  13.1.6 ...

    Android版本更新下载提示对话框

    Android手机版本更新,使用okhttp网络框架进行网络请求和文件下载操作,使用Handler线程处理progress进度的实时更新,下载之后用户进行选择安装新版本,点击手机返回键或者对话框取消按钮取消文件下载,代码简单易懂...

    Android代码-如何自己实现一个 EventBus

    EventBusKotlin 用 Kotlin 简单实现了一个 EventBus ...mode 方法执行线程 @Subscriber(tag = DEFAULT_TAG, mode = ThreadMode.MAIN) private fun change2(event: XXXEvent){ textView2.text = "今

    Android定时器Timer的停止和重启实现代码

    本文介绍了Android定时器Timer的停止和重启实现代码,分享给大家,具体如下: 7月份做了一个项目,利用自定义控件呈现一幅动画,当时使用定时器来控制时间,但是当停止开启时总是出现问题。一直在寻找合理的方法...

    Android代码-安卓蓝牙选择器

    BluetoothSelector 蓝牙选择器 功能 通过回调函数执行蓝牙连接成功后和断开后的动作 支持多蓝牙设备同时连接 集成读取数据的thread,可直接在回调函数中输入... * @param bluetoothConnectCallback 连接建立和取消

    Android代码-OkHttp3

    当Activity/Fragment销毁时自动取消相应的所有网络请求,支持取消指定请求 异步请求响应自动切换到UI线程,摒弃runOnUiThread Application中自定义全局配置/增加系统默认配置 支持文件和图片上传/批量上传,支持同步...

Global site tag (gtag.js) - Google Analytics