关闭

Java内存溢出与栈溢出

http://m.blog.csdn.net/hu1991die/article/details/43052281 一、背景知识 1、JVM体系结构 2、JVM运行时数据区 3、JVM内存模型 JVM运行时内存 = 共享内存区 + 线程内存区 ...
阅读(49) 评论(0)

WeakReference与SoftReference

转自:http://flyneil.iteye.com/blog/1345177   WeakReference与SoftReference都可以用来保存对象的实例引用,这两个类与垃圾回收有关。 WeakReference是弱引用,其中保存的对象实例可以被GC回收掉。这个类通常用于在某处保存对象引用,而又不干扰该对象被GC回收,通常用于Debug、内存监视工具等程序中。因为这...
阅读(121) 评论(0)

WeakHashMap是如何清除不用的key的

先把问题说清楚: WeakHashMap是主要通过expungeStaleEntries这个函数的来实现移除其内部不用的条目从而达到的自动释放内存的目的的.基本上只要对WeakHashMap的内容进行访问就会调用这个函数,从而达到清除其内部不在为外部引用的条目。但是如果预先生成了WeakHashMap,而在GC以前又不曾访问该WeakHashMap,那不是就不能释放内存了吗? 对应的两...
阅读(171) 评论(0)

Java WeakHashMap 源码解析

前面把基于特定数据结构的Map介绍完了,它们分别利用了相应数据结构的特点来实现特殊的目的,像HashMap利用哈希表的快速插入、查找实现O(1)的增删改查,TreeMap则利用了红黑树来保证key的有序性的同时,使得增删改查的时间复杂度为O(log(n))。 今天要介绍的WeakHashMap并没有基于某种特殊的数据结构,它的主要目的是为了优化JVM,使JVM中的垃圾回收器(garbage co...
阅读(83) 评论(0)

Java中的WeakHashMap实现分析

转:https://www.dexcoder.com/selfly/article/289 在Java集合中有一种特殊的Map类型:WeakHashMap。 WeakHashMap 继承于AbstractMap,实现了Map接口。 和HashMap一样,WeakHashMap 也是一个散列表,它存储的内容也是键值对(key-value)映射,而且键和值都可以是null。 不过WeakHash...
阅读(304) 评论(0)

Java引用总结--StrongReference、SoftReference、WeakReference、PhantomReference

1 Java引用介绍    Java从1.2版本开始引入了4种引用,这4种引用的级别由高到低依次为:    强引用  >  软引用  >  弱引用  >  虚引用 ⑴强引用(StrongReference)     强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终...
阅读(88) 评论(0)

不只是给面试加分 -- Java WeakReference的理解与使用

前言: 看到篇帖子, 国外一个技术面试官在面试senior java developer的时候, 问到一个weak reference相关的问题. 他没有期望有人能够完整解释清楚weak reference是什么, 怎么用, 只是期望有人能够提到这个concept和java的GC相关. 很可惜的是, 20多个拥有5年以上java开发经验的面试者中, 只有两人知道weak reference的存在,...
阅读(195) 评论(0)

浅谈一下JAVA对象,对象引用以及对象赋值

浅谈一下JAVA对象,对象引用以及对象赋值          今天有班级同学问起JAVA对象的引用是什么。正好趁着这次机会,自己总结一下JAVA对象,对象引用以及对象赋值。自己总结了所看到的网上相关方面的不少帖子,整理汇总形成下面的文章。   Java对象及其引用     初学Java,总是会自觉或不自觉地把Java和C++相比较。在学习Java类与对象章节的时候,发现教科...
阅读(4261) 评论(1)
    个人资料
    • 访问:6971557次
    • 积分:61219
    • 等级:
    • 排名:第34名
    • 原创:250篇
    • 转载:2617篇
    • 译文:3篇
    • 评论:661条
    文章分类
    最新评论