Android安卓开发中终止线程方法
2014-10-28 15:08
309 查看
有时当一个组件或者activity被destory()的时候要求其启动的线程也一起终止掉,现在就来总结了一下有这有几种方法:
1、初始化的时候,定义启动的线程为一个守护线程,这样当主线程消亡掉的时候,其他线程也会被终止。(主线程是整个程序,所以如果是要求页面结束时,其中的线程也终止,那么这个方法没什么用!)
// 使用下面的方法,当初始化一个线程时
myThread.setDaemon(true);
myThread.start
2、可在activity中的onstop()方法中调用以下代码。
if (myThread != null) {
Thread dummy = myThread;
myThread = null;
dummy.interrupt();
}
3、可在线程run()方法中设置标志位。
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;
}
1、初始化的时候,定义启动的线程为一个守护线程,这样当主线程消亡掉的时候,其他线程也会被终止。(主线程是整个程序,所以如果是要求页面结束时,其中的线程也终止,那么这个方法没什么用!)
// 使用下面的方法,当初始化一个线程时
myThread.setDaemon(true);
myThread.start
2、可在activity中的onstop()方法中调用以下代码。
if (myThread != null) {
Thread dummy = myThread;
myThread = null;
dummy.interrupt();
}
3、可在线程run()方法中设置标志位。
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开发中终止线程方法
- Android(安卓)开发通过NDK调用JNI,使用opencv做本地c++代码开发配置方法 边缘检测 范例代码
- Android(安卓)开发通过NDK调用JNI,使用opencv做本地c++代码开发配置方法 边缘检测 范例代码
- android多线程之二:终止线程的三种方法
- Android开发学习笔记6--安卓程序调试方法
- [安卓开发] Android Studio导入SlidingMenu的两种方法(超详细)
- android 停止 终止 Thread 线程的三种方法
- 安卓开发笔记(二) Android使用AttributeSet自定义控件的方法
- 安卓开发笔记(二)------------终止一个线程
- 3种线程的实现方法安卓开发
- android 终止线程几种方法
- 安卓实战开发之JNI入门及高效的配置(android studio一键生成.h,so及方法签名)
- AndroidStudio+Genymotion(附破解方法)安卓开发环境搭建
- [安卓开发] Android Studio导入SlidingMenu的两种方法(超详细)
- Android开发之子线程操作UI的几种方法
- android通过数组,流播放声音的方法,音频实时传输(安卓软件开发)
- Android 终止线程的方法
- Android(安卓)开发通过NDK调用JNI,使用opencv做本地c++代码开发配置方法实现边缘检测代码(2)
- Android开发笔记之:如何安全中止一个自定义线程Thread的方法