自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

冰三尺的Blog

var x J.stringify({_id:"_581267",motto:"观千剑而后识, 操千曲而后晓声."}, null, 5)

  • 博客(6)
  • 收藏
  • 关注

转载 HashSet实现原理-源码调试

HashSet是基于HashMap的,进入HashMap类的put方法,后面具体实现就是HashMap。在这个特殊的hashMap中,使用hasSet的每个值作为key,所有key对应同一个Object对象作为value,所以可以说,HashSet是HashMap的一种特殊形式。

2016-08-26 12:17:06 356

转载 ConcurrentHashMap实现原理-源码调试

ConcurrentHashMap线程安全的总结是我从源码分析出来的: ConcurrentHashMap所谓线程安全是如果没有哈希冲突使用compareAndSwapObject方式新增节点,如果哈希冲突的时候锁住哈希冲突的节点,这样新增的节点是线程安全的,而 ConcurrentHashMap又不像hashtable那样整个put方法被锁定,所以性能比hashtable要好,因为这样不影响其他节点的插入和读取。

2016-08-26 11:28:35 981

转载 HashMap的工作原理jdk1.8-源码调试

jdk1.8版本对HashMap改动很大,jdk1.7之前的版本,HashMap采用的是链表+位桶的方式,也就是我们经常说的散列表的方式,但是在jdk1.8版本中,HashMap采用的是位桶+链表/红黑树的方式,也是非线程安全的。当某个位桶的链表的长度到达某个阈值的时候,这个链表就转化为红黑树。

2016-08-26 11:05:31 1605

转载 HashMap的工作原理JDK1.6

HashMap基于hashing原理,我们通过put()和get()方法储存和获取对象。当我们将键值对传递给put()方法时,它调用键对象的hashCode()方法来计算hashcode,让后找到bucket位置来储存值对象。当获取对象时,通过键对象的equals()方法找到正确的键值对,然后返回值对象。HashMap使用链表(拉链法)来解决hashCode碰撞问题,当发生碰撞了,对象将会储存在链表的下一个节点中。 HashMap在每个链表节点中储存键值对对象。如果两个不同的键对象的hashCode相同,那

2016-08-26 10:52:47 374

转载 Mysql 性能分析命令explain详解

Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看 SQL 语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优化语句。 Explain语法:explain select … from … [where ...]

2016-08-09 14:19:38 444

转载 WebSocket 详解

WebSocket通过第一个 HTTP request 建立了 TCP 连接之后,之后的交换数据都不需要再发 HTTP request了,使得这个长连接变成了一个真.长连接。但是不需要发送 HTTP header就能交换数据显然和原有的 HTTP 协议是有区别的,所以它需要对服务器和客户端都进行升级才能实现。在此基础上 WebSocket 还是一个双通道的连接,在同一个 TCP 连接上既可以发也可以收信息。此外还有 multiplexing 功能,几个不同的 URI 可以复用同一个 WebSocket 连接

2016-08-03 18:04:10 374

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除