摘要:
垃圾回收器的发展历程 背景 01、 解决的问题 垃圾回收器是 年正式提出, 开始正式支持,在 年作为 默认的垃圾处理器。 在 年的时候, 程序堆的内存越来越大,从而导致程序中可存活的活对象越来越多,因此 的`STW G1 STW`带来的停顿时间太长了 。 在此之前效率也很高,但活对象数量一多, 时间 阅读全文
摘要:
基础结构 内部结构如下:栈、堆。 栈 中的栈主要是指线程里面的栈,里面有方法栈、 方法栈、 寄存器等等;每个方法栈是由栈帧组成的;每个栈帧是由局部变量表、操作数栈等组成。 每个栈帧其实就代表一个方法 堆 中所有对象都在堆中分配;堆中对象又分为年轻代、老年代等等,不同代的对象使用不同垃圾回收算法。 : 阅读全文
摘要:
1、它实现了 接口,该接口定义了一些原子操作约定 2、线程安全 完全的并发读和高并发写 读操作完全无锁,牺牲了一致性;写操作部分有锁 它与 、`Collections.synchronizedMap` 支持 ,`ConcurrentHashMap HashTable null` 3、 分段锁 哈希表 阅读全文
摘要:
一、哈希表 哈希表是一种可以快速定位得数据结构。哈希表可以做到平均查找、插入、删除时间是O(1),当然这是指不发生Hash碰撞得情况。而哈希表最大得缺陷就是哈希值得碰撞(collision)。 Hash碰撞:就是指hash桶有多个元素了。常见解决哈希碰撞得方法就是在hash桶后面加个链表 这里就引入 阅读全文