美文网首页
Java 死锁demo

Java 死锁demo

作者: 我不懂我不懂a | 来源:发表于2022-09-21 19:42 被阅读0次

线程:a,b
资源:1,2
简单说就是线程a持有资源1需要资源2,线程b持有资源2需要资源1,产生死锁。

public class DeadLock {
    public static void main(String[] args) {
        ReentrantLock alock = new ReentrantLock();
        ReentrantLock block = new ReentrantLock();

        new Thread(()->{
            alock.lock();
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            block.lock();
            block.unlock();


            alock.lock();
        }).start();

        new Thread(()->{
            block.lock();
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            alock.lock();
            alock.unlock();


            block.lock();
        }).start();
    }
}

相关文章

  • Java 死锁demo

    线程:a,b资源:1,2简单说就是线程a持有资源1需要资源2,线程b持有资源2需要资源1,产生死锁。

  • 多线程分析——死锁代码demo

    前言 本文主要是对Java多线程死锁代码demo的分析,对其过程以及死锁进行了大致的概括,希望对大家有帮助。 死锁...

  • Java死锁检测之ThreadMXBean

    看此文章前请先了解之前一篇文章 "Java死锁之理解死锁" 中的死锁示例java 中提供了可以检测死锁的工具类Th...

  • 多线程之_死锁

    基本介绍 多个线程都占用了对方的锁资源、但不肯想让、导致了死锁、再编程上一定要避免死锁的发生。 死锁demo 结果

  • Java concurrency《防止死锁》

    Java concurrency《防止死锁》 常见预防死锁的办法 有顺序的锁 具有超时时间的锁 死锁的检测 有顺序...

  • 如何去检测死锁

    如何检测死锁 死锁预防 让线程获取锁的顺序一致 死锁检测 jps 查看java 进程信息 jstack +进程号 ...

  • 反射机制--高淇Java视频笔记

    以注释形式讲解。 1.User.java 2.Demo1.java 3.Demo2.java 4.Demo3.java

  • 死锁

    在JAVA编程中,有3种典型的死锁类型: 静态的锁顺序死锁 动态的锁顺序死锁 协作对象之间发生的死锁 静态的锁顺序...

  • Java死锁的简单例子

    Java死锁的简单例子 两个线程互相占有对方需要的资源而不释放,便形成了死锁。 代码如下:Program.java...

  • JVM_JMM: 死锁的检测

    死锁的示例代码: 通过jconsole来检测死锁: 名称: Thread-1状态: java.lang.Class...

网友评论

      本文标题:Java 死锁demo

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