欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

重入锁的设计目的

发布时间:2024/4/13 55 豆豆
生活随笔 收集整理的这篇文章主要介绍了 重入锁的设计目的 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

比如调用demo方法获得了当前的对象锁,然后在这个方法中再去调用demo2,demo2中的存在同一个实例锁,这个时候当前线程会因为无法获得demo2的对象锁而阻塞,就会产生死锁。重入锁的设计目的是避免线程的死锁。

public class ReentrantDemo{ public synchronized void demo(){ System.out.println("begin:demo"); demo2(); } public void demo2(){ System.out.println("begin:demo1"); synchronized (this){ } } public static void main(String[] args) { ReentrantDemo rd=new ReentrantDemo(); new Thread(rd::demo).start(); } }

 

总结

以上是生活随笔为你收集整理的重入锁的设计目的的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。