Java Fundamentals
文章平均质量分 74
YinKaiLin
这个作者很懒,什么都没留下…
展开
-
Java集合中基于hash的容器
Java集合中基于hash的容器原创 2016-09-12 17:33:42 · 706 阅读 · 0 评论 -
Java虚拟机ShutdownHooks
Java虚拟机为开发人员提供了一个回调入口,开发人员通过这个回调入口,向Java虚拟机注册任意一段代码,让Java虚拟机在将要结束运行之前,执行这段代码。这个机制通常被用来做一些资源的清理工作,tomcat容器源码中就有用到这个机制,现在对这个机制做一个介绍。demopublic static void main(String[] args) { Runtime.getRuntime().a原创 2017-11-15 16:33:04 · 563 阅读 · 0 评论 -
Lamda Expressions
我们通常在调用一个方法时,在参数列表中定义一个匿名内部类,向方法中传递一个代码块,用来指定个性化的行为,如:Collections.sort(list, new Comparator<Person>(){ @Override public int compareTo(Person p1, Person p2) { return p1.g原创 2017-11-16 14:24:03 · 349 阅读 · 0 评论 -
The ABA Problem
ABA problem 在多线程环境下,在同步的过程中可能会发生ABA问题。如果一个线程对同一片内存区域进行两次读取,发现两次读取的内容相同,那么它会认为在这个两次读取过程中系统状态没有发生改变,可以对内存区域进行修改,从而不会造成一致性问题(这就是CAS的基本原理,使用CAS来做线程同步的话,一般先会读取变量的值,然后对变量的值进行修改,最后通过CAS原子指令比较之前读取的值与内存中的值是否相翻译 2018-01-09 14:28:34 · 954 阅读 · 0 评论