随笔分类 - java JVM
摘要:工具 jvisualvm.exe:JDK自带,\jdk1.8.0_131\bin 方法区内存溢出异常 jdk1.8和1.7自带的hotspot虚拟机的差异了。从jdk1.8开始,自带的hostspot虚拟机取消了过去的永久区,而新增了metaspace区,从功能上看,metaspace可以认为和永久
阅读全文
摘要:强引用 普通的变量引用 public static User user = new User(); 软引用 将对象用SoftReference软引用类型的对象包裹,正常情况不会被回收,但是GC做完后发现释放不出空间存放新的对象,则会把这些软引用的对象回收掉。软引用可用来实现内存敏感的高速缓存。 适用
阅读全文
摘要:-XX:+PrintGCDetails:程序运行的时候打印堆的大小。如果发生GC,会打印GC日志 -Xss:设置的大小是一个线程开辟的空间,设置的越大,系统可开辟的线程数量越少,默认是1M -Xms:堆最小空间 -Xmx:堆最大空间 -Xmn:年轻代 -XX:MetaspaceSize:方法区(jd
阅读全文
摘要:参考:https://blog.csdn.net/sivyer123/article/details/17139443
阅读全文
摘要:我们执行一个类 首先javac命令编译这个类(对编译原理我们不需要做深入了解) 在java命令启动虚拟机对.class文件进行加载和执行 类加载或类初始化 当程序主动使用某个类时,如果该类还未被加载到内存中,则JVM会通过加载、连接、初始化3个步骤来对该类进行初始化。如果没有意外,JVM将会连续完成
阅读全文
摘要:垃圾回收过程 任何一种垃圾回收算法一般要做两件基本事情: 1. 发现无用的对象 2. 回收无用对象占用的内存空间。 垃圾回收机制保证可以将“无用的对象”进行回收。无用的对象指的就是没有任何变量引用该对象。Java的垃圾回收器通过相关算法发现无用对象,并进行清除和整理。 如何判断对象可以被回收 1.
阅读全文
摘要:更多了解:https://blog.csdn.net/zhangbaoanhadoop/article/details/82193497 栈的特点如下 1.栈描述的是方法执行的内存模型。每个方法被调用都会创建一个栈帧(存储局部变量,引用变量(方法中声明的对象的引用)、操作数、方法出口等) 2.JVM
阅读全文

浙公网安备 33010602011771号