Java线程:线程的调度-合并

来源:互联网 发布:天梯金融 淘宝 编辑:程序博客网 时间:2024/06/06 09:37

Java线程:线程的调度-合并

线程的合并的含义就是将几个并行线程的线程合并为一个单线程执行,应用场景是当一个线程必须等待另一个线程执行完毕才能执行时可以使用join方法。

join为非静态方法,定义如下:

void join()        等待该线程终止。    void join(long millis)        等待该线程终止的时间最长为 millis 毫秒。    void join(long millis, int nanos)        等待该线程终止的时间最长为 millis 毫秒 + nanos 纳秒。
/** * Java线程:线程的调度-合并 * * @author leizhimin 2009-11-4 9:02:40 */ public class Test {         public static void main(String[] args) {                 Thread t1 = new MyThread1();                 t1.start();                 for (int i = 0; i < 20; i++) {                         System.out.println("主线程第" + i + "次执行!");                         if (i > 2) try {                                 //t1线程合并到主线程中,主线程停止执行过程,转而执行t1线程,直到t1执行完毕后继续。                                 t1.join();                         } catch (InterruptedException e) {                                 e.printStackTrace();                         }                 }         } } class MyThread1 extends Thread {         public void run() {                 for (int i = 0; i < 10; i++) {                         System.out.println("线程1第" + i + "次执行!");                 }         } }
主线程第0次执行! 主线程第1次执行! 主线程第2次执行! 线程10次执行! 主线程第3次执行! 线程11次执行! 线程12次执行! 线程13次执行! 线程14次执行! 线程15次执行! 线程16次执行! 线程17次执行! 线程18次执行! 线程19次执行! 主线程第4次执行! 主线程第5次执行! 主线程第6次执行! 主线程第7次执行! 主线程第8次执行! 主线程第9次执行! 主线程第10次执行! 主线程第11次执行! 主线程第12次执行! 主线程第13次执行! 主线程第14次执行! 主线程第15次执行! 主线程第16次执行! 主线程第17次执行! 主线程第18次执行! 主线程第19次执行! Process finished with exit code 0

本文出自 “熔 岩” 博客,请务必保留此出处http://lavasoft.blog.51cto.com/62575/221817

0 0
原创粉丝点击