- 博客(4)
- 资源 (5)
- 收藏
- 关注
原创 HashTable源码分析、与 HashMap的区别
HashTable 1.8源码分析首先回顾一下HashTable的特性:线程安全,Key Value 都不能为空。 数据结构: 数组 + 链表,默认数组的长度是11 , 扩容时为原来的两倍+1,阈值是0.75。 父类是 Dictionary<K,V>.。使用的是Enumeration迭代。 public 方法都使用了synchronize关键字。多线程情况是安全了,就是会造成排队...
2019-07-19 18:23:41 197
原创 ConcurrentHashMap源码分析
帮忙纠错! 诚恳感谢!源码分析1.8ConcurrentHashMap数据结构是: 数组 + 链表 + 红黑树,它是线程安全的。其中抛弃了原有的 Segment 分段锁,而采用了 CAS + synchronized 来保证并发安全性。在多并发情况下它的数据为弱一致性的,多并发下get()返回的结果可能不是预期的值(这点在最后论证)。适用场景为:多线程对HashMap数据添加删除操作时。口述...
2019-07-18 23:43:45 208
原创 HashMap源码分析线程不安全
HashMap 源码分析线,为啥线程不安全?为啥呢,接着往下看看。主要原因是HashMap在put的时候会导致多线程下结果不一致!上一篇文章讲解HashMap的源码,当然么有每个方法都将,只讲了get(),和put()和构造方法。身下的自己看看就OK了,不过重点应该都涉及到了… … 吧!进入正题!!!现在我们来单线程的put一下 图解:出入完成后是这样的多线程下就会有问题:假设...
2019-07-16 15:37:04 250
原创 HashMap源码分析实现原理
HashMap 数据结构Java 1.7 HashMap 的数据结构是 数组 + 链表Java 1.8 HashMap 的数据结构是 数组 + 链表 + 红黑树HashMap 重点参数这里是针对1.8总结的。HashMap的默认初始化容量, 必须是2的幂static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // ak...
2019-07-15 16:42:44 199
vue-admin-template-master.zip
2019-05-21
Xftp 安装包
2018-10-15
java使用sigar检测CPU占用率
2017-08-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人