多个线程按顺序执行——join()
2015-09-07 08:30
435 查看
package com.jjyy.thread; /** * 假如有三个线程T1,T2,T3,如何保证T2在T3之前执行完成,T1在T2之前完成? * @author jiangyu 2015年9月7日 * 注意:线程的优先级无法保障线程的执行次序。只不过优先级高的线程获取 CPU 资源的概率大一点而已。 */ public class JoinTest { public static void main(String[] args) { final Thread t1 = new Thread(new Runnable() { @Override public void run() { System.out.println("thread1"); } }); final Thread t2 = new Thread(new Runnable() { @Override public void run() { try { // 引用t1线程,等待t1线程执行完 t1.join(); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("thread2"); } }); Thread t3 = new Thread(new Runnable() { @Override public void run() { try { //引用t2线程,等待t2线程执行完 t2.join(); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("thread3"); } }); t3.start(); t2.start(); t1.start(); } }
相关文章推荐
- 甄别课0831
- IT人的技术积累博客开张,用于记录一些平时的问题供自己看,其它人搜到仅供参考
- OC通讯录(MRC手动管理内存)
- HDU 2010 水仙花数(水~)
- HDU 2009 求数列的和(水~)
- Java StringBuffer.setLength()方法
- 违规开采屡禁不绝 祁连山陷生态“黑洞”
- HTML学习-网页主体标记body(二)
- 我的微型工作流引擎-功能解析及API设计
- 黑马程序员--OC的Foundation框架之字典
- 手动编译一个c文件(Win7下如何使用GCC编译器)
- KindEditor编辑器结合EasyUi
- SVN学习笔记1 -- 为什么要使用SVN
- POJ 题目3580 SuperMemo(Splay Tree区间加,区间翻转,区间右移,插入删除,区间最小值)
- Unity3d 移动设备播放视频纹理
- UVa 1265 Tour Belt Kurscal 变型
- android listView 全部展开,并且点击Item有效,可以用scrollView包裹,实现整体滑动
- public static <T> List<T> asList(T... a) 原型是怎么回事?
- codeforce 568A Primes or Palindromes?
- 浅谈Android布局