黑马程序员技术交流社区

标题: 死锁学习 [打印本页]

作者: zouxx    时间: 2015-4-8 19:58
标题: 死锁学习
/*
死锁。
同步中嵌套同步。

*/

class Ticket implements Runnable
{
        private  int tick = 1000;
        Object obj = new Object();
        boolean flag = true;
        public  void run()
        {
                if(flag)
                {
                        while(true)
                        {
                                synchronized(obj)
                                {
                                        show();
                                }
                        }
                }
                else
                        while(true)
                                show();
        }
        public synchronized void show()//this
        {
                synchronized(obj)
                {
                        if(tick>0)
                        {
                                try{Thread.sleep(10);}catch(Exception e){}
                                System.out.println(Thread.currentThread().getName()+"....code : "+ tick--);
                        }
                }
        }
}


class  DeadLockDemo
{
        public static void main(String[] args)
        {

                Ticket t = new Ticket();

                Thread t1 = new Thread(t);
                Thread t2 = new Thread(t);
                t1.start();
                try{Thread.sleep(10);}catch(Exception e){}
                t.flag = false;
                t2.start();


        }
}

作者: 突然世界晴    时间: 2015-4-8 20:09
没有注释 差评
作者: liuzf006    时间: 2015-4-8 20:17
不错,已经掌握死锁了!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2