博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android 取消线程的方法
阅读量:6354 次
发布时间:2019-06-22

本文共 711 字,大约阅读时间需要 2 分钟。

本文来自:

       有时当一个组件或者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; }

原文地址:

转载于:https://www.cnblogs.com/yyq-quan/archive/2011/07/27/2118589.html

你可能感兴趣的文章
OpenCms创建网站过程图解——献给OpenCms的初学者们
查看>>
C++ 异常处理机制的实现
查看>>
Freebsd的ports命令
查看>>
分布式系统---幂等性设计
查看>>
【转】时钟周期,机器周期,指令周期的区别
查看>>
MYSQL 更新时间自己主动同步与创建时间默认值共存问题
查看>>
android 屏幕适配
查看>>
Android Activity的4种启动模式
查看>>
leetcode第一刷_Minimum Depth of Binary Tree
查看>>
pm2-webshell —— 基于浏览器的终端控制台
查看>>
Mysql基准测试
查看>>
Session 撰改演示
查看>>
【转】python3 发邮件实例(包括:文本、html、图片、附件、SSL、群邮件)
查看>>
事务隔离级别(图文详解)
查看>>
canvas系列教程08-canvas各种坑
查看>>
浅析package.json中的devdependencies 和 dependencies
查看>>
又一个 iOS 侧边栏组件: SideMenu
查看>>
vue.js 打包遇到的问题
查看>>
【译】更优秀的GraphQL官方中文文档-客户端如何使用
查看>>
git pull遇到的问题
查看>>