您的位置:首页 > 其它

线程理解之经典,同时测试了isAlive的使用。

2015-03-11 22:20 441 查看

/*

 时间:2015年3月11日22:02:19

 测试isAlive()方法的使用

  仔细看程序运行的结果。

  在程序运行的过程中,可以看出虚拟机先运行的是main线程中for循环中的第一句和第二句,接下来虚拟机调度,执行的是t线程的for循环中的第一句

  接下来再一次的切换,执行的是主线程的for循环第三句。然后虚拟机再次调度执行了t线程的第二句和第三句………………

*/

public class TestThread6 { 

 public static void main(String args[]){

  Runner6 t = new Runner6("r6");

    t.start();

  

  for(int i=0; i<10; i++) {

   System.out.println("MainThread: " + i);

   System.out.println("wojkjfkdsjfk");

   System.out.println("========================");

  }

  }

}

class Runner6 extends Thread {

 public Runner6(String s) {

  super(s); 

 }

 public void run() {

  

  for(int i=0;i<10;i++) {

   System.out.println(getName() + " " + Thread.currentThread().isAlive());

   System.out.println("SubThread: " + i);

   System.out.println("---------------------");

  }

 }

}

/*

D:\java\thread>javac TestThread6.java

D:\java\thread>java TestThread6

MainThread: 0

wojkjfkdsjfk

r6 true

========================

SubThread: 0

---------------------

MainThread: 1

wojkjfkdsjfk

========================

r6 true

MainThread: 2

wojkjfkdsjfk

========================

SubThread: 1

---------------------

MainThread: 3

wojkjfkdsjfk

========================

r6 true

MainThread: 4

wojkjfkdsjfk

========================

SubThread: 2

---------------------

MainThread: 5

wojkjfkdsjfk

========================

r6 true

MainThread: 6

wojkjfkdsjfk

========================

SubThread: 3

---------------------

MainThread: 7

wojkjfkdsjfk

========================

r6 true

MainThread: 8

wojkjfkdsjfk

========================

SubThread: 4

---------------------

MainThread: 9

wojkjfkdsjfk

========================

r6 true

SubThread: 5

---------------------

r6 true

SubThread: 6

---------------------

r6 true

SubThread: 7

---------------------

r6 true

SubThread: 8

---------------------

r6 true

SubThread: 9

---------------------

*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: