- 博客(4)
- 资源 (7)
- 收藏
- 关注
原创 Java内存模型详解
引言由于计算机的存储设备与处理器的运算能力之间有几个数量级的差距,所以现代计算机系统都不得不加入一层读写速度尽可能接近处理器运算速度的高速缓存(cache)来作为内存与处理器之间的缓冲:将运算需要使用到的数据复制到缓存中,让运算能快速进行,当运算结束后再从缓存同步回内存之中没这样处理器就无需等待缓慢的内存读写了。Java内存模型介绍Java内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机
2017-10-29 12:07:41
178
原创 java中CAS实现
CAS介绍要实现无锁(lock-free)的非阻塞算法有多种实现方法,其中CAS(比较与交换,Compare and swap)是一种有名的无锁算法。CAS有3个操作数,内存值V,旧的预期值A,要修改的新值B。CAS的语义是“我认为V的值应该为A,如果是,那么将V的值更新为B,否则不修改并告诉V的值实际为多少”CAS, CPU指令,在大多数处理器架构,包括IA32、Space中采用的都是CAS
2017-10-29 11:10:22
712
原创 单例模式探究
单例模式的使用场景:产生某对象会消耗过多的资源,为避免频繁地创建与销毁对象对资源的浪费。如: 对数据库的操作、访问 IO、线程池、网络请求等。某种类型的对象应该有且只有一个。如果制造出多个这样的实例,可能导致:程序行为异常、资源使用过量、结果不一致等问题。单例模式的几种写法饿汉,线程安全public class Singleton { public static Singleto
2017-10-28 15:59:39
135
原创 java集合框架分析
java集合框架两大基类Collection与Map在集合框架的类继承体系中,最顶层有两个接口:Collection表示一组纯数据 Set表示不允许有重复元素的集合(A collection that contains no duplicate elements)List表示允许有重复元素的集合(An ordered collection (also known as a sequence))
2017-10-28 12:05:09
204
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人