代码是这样的没实现死锁publicclassDeathLockTest{publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubDeathRunnabler=newDeathRunnable();Threadt1=newThread(r,"t1...
代码是这样的 没实现死锁
public class DeathLockTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
DeathRunnable r=new DeathRunnable();
Thread t1=new Thread(r,"t1");
Thread t2=new Thread(r,"t2");
t1.start();
t2.start();
}
}
class DeathRunnable implements Runnable{
Object obj1=new Object();
Object obj2=new Object();
@Override
public void run() {
// TODO Auto-generated method stub
if(Thread.currentThread().getName().equals("t1")){
synchronized(obj2){
System.out.println("线程1锁定obj1");
}
synchronized(obj1){
System.out.println("线程1锁定obj2");
}
}else if(Thread.currentThread().getName().equals("t2")){
synchronized(obj1){
System.out.println("线程2锁定obj2");
}
synchronized(obj2){
System.out.println("线程2锁定obj1");
}
}
}
}
展开