/**
*
*
* @author William
* @date Mar 15, 2013
* @version 1.0
*/
public class GetStaticVal extends Thread{
String id;
public GetStaticVal(String id){
this.id=id;
}
public void run()
{
if(id.equals("1")){
for(int i=0;i<100000000;i++){
StaticClass.val=i;
//System.out.println(StaticClass.val);
}
System.out.println(id+"==="+StaticClass.val);
}else{
System.out.println(id+"==="+StaticClass.val);
}
}
public static void main(String[] args) {
GetStaticVal th1=new GetStaticVal("1");
GetStaticVal th2=new GetStaticVal("2");
GetStaticVal th3=new GetStaticVal("3");
GetStaticVal th4=new GetStaticVal("4");
System.out.println("begin="+StaticClass.val);
th1.start();
th1.yield(); //yield是先将自已执行权先暂时转让给别的线程,等别的线程都执行完再接着再执行
// try {
// th1.join(); //所以有线程同步后,要待到自已线程执行完再,执行其它线程
// } catch (InterruptedException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
th2.start();
th3.start();
th4.start();
System.out.println("End="+StaticClass.val);
}
}
//Static Class
public class StaticClass {
public static int val;
}