- 博客(5)
- 收藏
- 关注
原创 GC 回收策略
垃圾回收:由JVM自动释放不再被程序所引用的对象,按照特定的算法来实现资源回收。如何判断一个对象是否生存或者消亡?首先如果在进行可达性分析之后,那些没有与GC Roots相关联的引用链将会第一次被标记并且进行一次筛选,筛选的条件是是否有必要执行finalize()方法,当对象没有覆盖finalize()或者已经被虚拟机调用过,虚拟机将这两种情况都被视为没有必要执行。如果这个对象被判...
2014-10-28 21:00:48 81
原创 Java 常见的内存泄漏
1. java.lang.OutOfMemoryError: Java heap space 解决方案1.1 原因JVM中如果98%的时间是用于GC且可用的, Heap size不足2%的时候将抛出此异常信息。JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置。JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的1/6...
2014-10-28 00:53:53 53
原创 内存溢出 & 内存泄露
内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory; 内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。 ...
2014-10-28 00:48:17 67
原创 Java 内存模型
Java Memory Model(Java 内存模型):1 主要用来屏蔽各种硬件和操作系统的内存访问差异,以实现让java 程序 在各种平台下都能达到一致的内存访问。2 JMM 规定了 所有变量都存储在主内存中,而针对于每一个线程还有自己的工作内存(Work Thread),线程的工作内存保存了该线程使用到的变量的主内存的副本拷贝。3 线程对变量的操作都必须在工作内存中实现,而不能...
2014-10-28 00:27:13 55
原创 Java Map集合的比较
Map 是一个可以保存映射关系数据的集合。key 和value可以是任何类型的数据,但是key不能重复。HashMap HashTable区别:1 线程安全问题2 key是否允许为null HashMap LinkedHashMap:LinkedHashMap是为了解决便利HashMap无序的问题.他的父类是HashMap,使用双向链表来维护键值对的次序。然后迭代的次序与...
2014-10-27 22:44:39 165
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人