当连个线程里的调用同一个类的创建实例,jvm的类加载器会保证静态资源只被加载一次(使用同一个类加载器的前提下),如果static代码块里写入一个死循环,则后一个被调用的线程会进入无限等待阶段
public class Test{
static{
int i=0;
while(true){
Thread.sleep(1000);
sout(i++);
}
}
psvm{
Runnable r1=new Runnable(){
public void run(){
Test t1=new Test();
}
}
Runnable r2=new Runnable(){
public void run(){
Test t2=new Test();
}
}
Thread t1=new Thread(r1);
Thread t2=new Thread(r2);
t1.start();
t2.start();
}
}