摘要:
原文:https://blog.csdn.net/tongdanping/article/details/79647337 锁的优化1、锁升级锁的4中状态:无锁状态、偏向锁状态、轻量级锁状态、重量级锁状态(级别从低到高) (1)偏向锁: 为什么要引入偏向锁? 因为经过HotSpot的作者大量的研究发 阅读全文
摘要:
原文:https://blog.csdn.net/zjy15203167987/article/details/82531772 1.为什么要使用synchronized 在并发编程中存在线程安全问题,主要原因有:1.存在共享数据 2.多线程共同操作共享数据。关键字synchronized可以保证在 阅读全文
摘要:
原文:https://www.cnblogs.com/yangfeiORfeiyang/p/9694383.html 大家应该都知道ConcurrentHashMap在1.8的时候有了很大的改动,当然,我这里要说的改动不是指链表长度大于8就转为红黑树这种常识,我要说的是ConcurrentHashM 阅读全文
摘要:
1.为什么用数组+链表? 1.为什么用数组+链表? 数组是用来确定桶的位置,利用元素的key的hash值对数组长度取模得到. 数组是用来确定桶的位置,利用元素的key的hash值对数组长度取模得到. 链表是用来解决hash冲突问题,当出现hash值一样的情形,就在数组上的对应位置形成一条链表。ps: 阅读全文
摘要:
原文:https://blog.csdn.net/xqhadoop/article/details/62237437 通过我们的程序中运行完之后都会进行一些清理工作,比如关闭数据库资源,同步等操作。这时我们的钩子函数addShutdownHook有了用武之地。 1.钩子程序执行时机: 当程序正常退出 阅读全文
摘要:
原文:https://github.com/Wisdom-Projects/holer 阅读全文