package jiangning.c21.ex;
/**
* Java编程思想 第四版 c21 并发
* 练习1:实现一个Runnable,在run()内部打印一个消息,
* 然后调用yield(),重复这个操作3次,然后从run中返回。
* 在构造其中放置一条启动消息,并且放置一条在任务终止
* 时的关闭消息,使用线程创建大量的这种任务并驱动它们。
* @author JiangNing
* 2012.10.5
*
*/
public class ExerciseOne implements Runnable {
private int count;
public ExerciseOne(){}
public ExerciseOne(int count){
this.count = count;
System.out.println("Start ExerciseOne " + count);
}
@Override
public void run() {
for(int i=0; i<3; i++){
System.out.println( count +" 进入run() 方法 " +i);
Thread.yield();
}
System.out.println("end " + count);
}
public static void main(String[] args) {
for(int i=0; i<5; i++){
new Thread(new ExerciseOne(i)).start();
}
}
}
/**
* 运行结果
Start ExerciseOne 0
Start ExerciseOne 1
Start ExerciseOne 2
Start ExerciseOne 3
0 进入run() 方法 0
Start ExerciseOne 4
1 进入run() 方法 0
3 进入run() 方法 0
2 进入run() 方法 0
1 进入run() 方法 1
0 进入run() 方法 1
2 进入run() 方法 1
1 进入run() 方法 2
3 进入run() 方法 1
4 进入run() 方法 0
end 1
3 进入run() 方法 2
end 3
2 进入run() 方法 2
4 进入run() 方法 1
0 进入run() 方法 2
end 2
4 进入run() 方法 2
end 0
end 4
*/