zoukankan      html  css  js  c++  java
  • Java演示死锁代码

    死锁代码

    public class DeadLock {

        final Object lockA = new Object();
        final Object lockB = new Object();

        public static void main(String[] args) {
            DeadLock demo = new DeadLock();
            demo.startLock();
        }

        public void startLock() {
            ThreadA a = new ThreadA(lockA, lockB);
            ThreadB b = new ThreadB(lockA, lockB);

            // start threads
            a.start();
            b.start();
        }

    }

    class ThreadA extends Thread {

        private Object lockA = null;
        private Object lockB = null;

        public ThreadA(Object a, Object b) {
            this.lockA = a;
            this.lockB = b;
        }

        public void run() {
            synchronized (lockA) {
                System.out.println("*** Thread A: ***: Lock A");
                try {
                    sleep(3000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                synchronized (lockB) {
                    System.out.println("*** Thread A: ***: Lock B");
                }
            }

            System.out.println("*** Thread A: ***: Finished");
        }

    }

    class ThreadB extends Thread {

        private Object lockA = null;
        private Object lockB = null;

        public ThreadB(Object a, Object b) {
            this.lockA = a;
            this.lockB = b;
        }

        public void run() {
            synchronized (lockB) {
                System.out.println("*** Thread B: ***: Lock B");
                try {
                    sleep(3000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                synchronized (lockA) {
                    System.out.println("*** Thread B: ***: Lock A");
                }
            }

            System.out.println("*** Thread B: ***: Finished");
        }

    }

    控制台截图:

      

  • 相关阅读:
    csp-s考试总结
    一种贪心
    P2463 [SDOI2008]Sandy的卡片
    P3294 [SCOI2016]背单词
    *UOJ#164. 【清华集训2015】V
    P5503 [JSOI2016]灯塔
    *P3515 [POI2011]Lightning Conductor
    P4585 [FJOI2015]火星商店问题
    求最短路必经边
    P1903 [国家集训队]数颜色 / 维护队列
  • 原文地址:https://www.cnblogs.com/chenmingjun/p/9671043.html
Copyright © 2011-2022 走看看