Android activity与service中的子线程 (入门级)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Android activity与service中的子线程 (入门级),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2002字,纯文字阅读大概需要3分钟。
内容图文
![Android activity与service中的子线程 (入门级)](/upload/InfoBanner/zyjiaocheng/1128/b81ba196eb8b4467a3f27fe3ff56457a.jpg)
1.首先 android 一个程序中 的activity 都是一个线程,service和activity也是一个线程
2.在activity 中启动一个子线程,当前activity finish destroy掉 子线也会运行的。
3.在service里的线程 与activity很类似 service即使停止了 线程也在运行(要先停止服务 再把最近使用的进程杀掉 线程会停止 ,如果直接杀掉进程 android会再次自动启动这个service的 此时即使再停止service服务 线程也会一直运行了除非关机)
activity 中启动一个子线程
public class SecondActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_lout); System.out.println("当前线程 执行了====SecondActivity====="+Thread.currentThread().getId()); new Thread(new Runnable() { @Override public void run() { while(true){ System.out.println("当前线程 执行了==22222=="+Thread.currentThread().getId()); try { Thread.sleep(2000); } catch (InterruptedException e) { e.printStackTrace(); } } } }).start(); } @Override protected void onDestroy() { System.out.println("当前线程 执行了======结束====="+Thread.currentThread().getId()); super.onDestroy(); } }activity finish 子线程依旧可以运行,即使程序退出了子线程也在运行 (除非在任务管理器里 把最近使用的进程杀掉)
service 中启动一个子线程
public class TestService extends Service{ @Override public int onStartCommand(Intent intent, int flags, int startId) { // TODO Auto-generated method stub System.out.println("当前线程 执行了====TestService0000====="+Thread.currentThread().getId()); new Thread(new Runnable() { @Override public void run() { while(true){ System.out.println("当前线程 执行了==22222=="+Thread.currentThread().getId()); try { Thread.sleep(2000); } catch (InterruptedException e) { e.printStackTrace(); } } } }).start(); return super.onStartCommand(intent, flags, startId); } @Override public void onDestroy() { System.out.println("当前线程 执行了=====TestService=结束====="+Thread.currentThread().getId()); super.onDestroy(); } @Override public IBinder onBind(Intent intent) { // TODO Auto-generated method stub return null; } }
以上3条是在 android 4.4.2测试的情况,其他版本没有试过。如有不对的地方请批评指正!
请注意子线程的生命周期 不要activity结束了 子线程才处理完 返回结果给UI就会有问题,也可以为耗时或者需要长时间运行的情况提供一点思路
原文:http://blog.csdn.net/nn955/article/details/44080213
内容总结
以上是互联网集市为您收集整理的Android activity与service中的子线程 (入门级)全部内容,希望文章能够帮你解决Android activity与service中的子线程 (入门级)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。