A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 新手ing 中级黑马   /  2015-7-19 09:49  /  382 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


public class Demo10 {

    /**
     * 写一个死锁
     */
    public static void main(String[] args) {
        Thread threada = new Thread(new DeadTest(true));
        Thread threadb = new Thread(new DeadTest(false));
        threada.start();
        threadb.start();}

}
class DeadTest implements Runnable{
    boolean flag;
    DeadTest(boolean flag){
        this.flag = flag;
    }
    public void run(){
         if(flag){
             synchronized(Mylock.locka){
                 System.out.println("if locka");
                 synchronized(Mylock.lockb){
                     System.out.println("if lockb");     
                 }
             }            
         }else{
             synchronized(Mylock.lockb){
                 System.out.println("else lockb");
                 synchronized(Mylock.locka){
                     System.out.println("else locka");     
                 }
             }
         }   
    }
}
class Mylock{
    static Object locka = new Object();
    static Object lockb = new Object();
}

2 个回复

倒序浏览
额,最好写一下注释。
回复 使用道具 举报
我只是路过,好好看一下啊。。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马