多線程之死鎖

class YuShi{

         public synchronized void say(FuXief){  //同步方法

                   System.out.println("玉史:給我30億歐元,放了你兒子");

                   f.get();

         }

         public synchronized void get(){  //同步方法

                   System.out.println("玉史終於得到了贖金,放了兒子,爲了下次繼續綁架");

         }

}

 

class FuXie{

         public synchronized void say(YuShiy){   //同步方法

                   System.out.println("付謝:放了我兒子,我給你30億歐元,不見人不給錢");

                   y.get();

         }

         public synchronized void get(){  //同步方法

                   System.out.println("付謝救回了自己的兒子,於是開始哭那30億歐元");

         }

}

 

public classDeadLock implements Runnable{

         YuShi ys = new YuShi();  //實例化對象

         FuXie fx = new FuXie();

        

         public static void main(String[] args){

                   new DeadLock();  //實例化的時候調用構造方法

         }

        

 

         public DeadLock(){

                   newThread(this).start();  //啓動線程

                   ys.say(fx);

         }

        

         @Override

         public void run(){

                   fx.say(ys);

         }

}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章