随笔分类 -  JVM

摘要:基于jdk1.8 hashMap实现,要求容量大小是2的整次方,例如:2/4/8/16/32/64/128...,而不能是中间的某个值。这是为什么呢? map是数组+链表的数据结构,读写数据都需要首先获取数组中的下标值,获取的方式是通过hashcode取余。取余so easy,我们都会,假定运算后的 阅读全文
posted @ 2018-07-01 00:11 一粒沙的世界 阅读(794) 评论(0) 推荐(1)
摘要:gson通过TypeToken实现了对泛型数据的支持,使用方式如下: 创建一个类实例,new [目标类]()就够了,TypeToken后面的{}是做什么呢,不少人可能像我一样有困惑。 先看下TypeToken的构造方法 这里我们只关注标红的部分。为了方便说明,我们写一个测试类,使用上面的2个方法,并 阅读全文
posted @ 2018-06-30 22:35 一粒沙的世界 阅读(325) 评论(0) 推荐(0)
摘要:来一段简单的cglib代码 代码中使用 System.setProperty(DebuggingClassWriter.DEBUG_LOCATION_PROPERTY, "D:\\classes")设置环境变量,此设置可以打印生成的字节码文件。 受影响的方法为:org.springframework 阅读全文
posted @ 2018-04-13 23:23 一粒沙的世界 阅读(1946) 评论(0) 推荐(0)
摘要:内存屏障 原文地址 作者:Martin Thompson 译者:一粟 校对:无叶,方腾飞 本文我将和大家讨论并发编程中最基础的一项技术:内存屏障或内存栅栏,也就是让一个CPU处理单元中的内存状态对其它处理单元可见的一项技术。 CPU使用了很多优化技术来实现一个目标:CPU执行单元的速度要远超主存访问 阅读全文
posted @ 2017-02-08 10:33 一粒沙的世界 阅读(288) 评论(0) 推荐(0)