
JVM
DY编程怪兽
You can go as far as you want to go.
心有多远,你就能走多远。
展开
-
利用LinkedHashMap怎么实现LRU缓存
概述LinkedHashMap 继承自 HashMap,在 HashMap 基础上,通过维护一条双向链表,解决了 HashMap 不能随时保持遍历顺序和插入顺序一致的问题。LinkedHashMap的存储结构是HashMap的存储结构+双向链表,LinkedHashMap 对访问顺序也提供了相关支持,了解其工作原理必选先了解HashMap的工作原理。数据结构以上是LinkedHashMap大致的数据结构,红色的双向箭头表示链表的引用方向,LinkedHashMap在hashmap原有...原创 2020-11-18 10:30:36 · 461 阅读 · 0 评论 -
java垃圾回收机制分类整理
一、确定垃圾1.1引用计数法引用和对象是有关联的、如果要操作对象则必须用引用进行。因此,很显然一个简单的办法是通过引用计数来判断一个对象是否可以回收。简单说,即一个对象如果没有任何与之关联的引用,即他们的引用计数都不为 0,则说明对象不太可能再被用到,那么这个对象就是可回收对象。1.2可达行分析(GCRoot)为了解决引用计数法的循环引用问题,Java 使用了可达性分析的方法。通过一系列的“GC roots”对象作为起点搜索。如果在“GC roots”和一个对象之间没有可达路径,则称该对原创 2020-10-27 09:55:47 · 692 阅读 · 0 评论