java 实现一个死锁

public class DeadLockDemo {

    private static final String A = "A";

    private static final String B = "B";


    public static void main(String[] args) {
        Thread t1 = new Thread(()->{
            synchronized (A){
                System.out.println("A is lock");
                try {
                    Thread.currentThread().sleep(2000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                synchronized (B){
                    System.out.println("1");
                }
            }
        },"t1");

        Thread t2 = new Thread(() -> {
           synchronized (B){
               System.out.println("B is lock");
               synchronized (A){
                   System.out.println("2");
               }
           }
        });
        t1.start();
        t2.start();
    }


}


运行结果

A is lock
B is lock

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是...
    Java架构007阅读 2,331评论 0 4
  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi阅读 7,449评论 0 10
  • -1- 多年不见的同事老杨到我公司找我。老杨现在是某装备制造业的销售经理,正巧我们公司需要购置一些设备。他特别来公...
    风信子逸轩阅读 2,209评论 6 15
  • 梦回童年引起很多小伙伴对童年的回忆,对于童年,每个人的心中或多或少都有那么几分留恋,童年的梦是纯真的,童年的回忆是...
    青叶11阅读 474评论 0 0
  • 由于个人阅历的局限性,我觉得有些书在读的最初阶段,是无法和作者就这本书的中心思想达成一致的。会有种知和行的割裂感。...
    _清鸢阅读 259评论 0 0