美文网首页
2021-04-24 死锁的条件

2021-04-24 死锁的条件

作者: 捕风的逍遥侯 | 来源:发表于2021-04-24 20:45 被阅读0次
    死锁的四个条件
    package hxy.bytecode.thread;
    
    public class DeadThead {
        public static void main(String[] args) {
            Object a = new Object();
            Object b = new Object();
    
    
            new Thread(() -> {
                synchronized (a) {
                    System.out.println("I get a");
                    try {
                        Thread.sleep(2000);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
    
                    System.out.println("I want to get b");
                    synchronized (b) {
                        System.out.println("I am a and   get b");
                    }
    
                }
            }).start();
    
            new Thread(() -> {
                synchronized (b) {
                    System.out.println("I get b");
                    try {
                        Thread.sleep(2000);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
    
                    System.out.println("I want to get a");
                    synchronized (a) {
                        System.out.println("I am b and   get a");
                    }
    
                }
            }).start();
    
            System.out.println("done");
        }
    }
    
    

    效果如下


    image.png

    查看java进程

    $ jps
    
    image.png

    查看死锁分析

    $ jstack
    
    image.png

    相关文章

      网友评论

          本文标题:2021-04-24 死锁的条件

          本文链接:https://www.haomeiwen.com/subject/nwwlrltx.html