php网站制作流程,产品网站开发计划表,开发软件需要什么条件,北京pc28网站Java的一次编译到处运行背后#xff1a;JVM从软件层面屏蔽了底层硬件、指令字节码的细节#xff08;JVM充当了适配器的角色和功能#xff09;
JVM\JDK\JRE关系
2、JVM运行时数据区 所有学过的知识是用来推导新的未知的知识的#xff0c;踏入社会要学会运用自己的知识能力去…Java的一次编译到处运行背后JVM从软件层面屏蔽了底层硬件、指令字节码的细节JVM充当了适配器的角色和功能
JVM\JDK\JRE关系
2、JVM运行时数据区 所有学过的知识是用来推导新的未知的知识的踏入社会要学会运用自己的知识能力去验证、求证自己的观点这是必须具备的能力过分依赖别人是危险的用别人的长处来弥补自己的短处借力提高。
线程时最小的执行单位是一个执行者
JDK1.6Hotspot虚拟机
程序计数器指向当前线程正在执行的字节码指令的地址行号有点类似计算机底层的指令计数器虚拟机栈栈-》数据结构-》存储数据-》存储当前线程运行方法时所需要的数据、指令、返回地址Java类中的方法是要被调用才能执行的这个调用方式可以是常见的main方法也可以是其他线程来调用。线程调用执行方法时需要从虚拟机栈中加载所需要的数据、指令、返回地址这些就存储在虚拟栈中并且一个方法对应一个栈帧本地方法栈比如native方法system.out.println();system.currentmillions()等方法区类信息class文件、常量1.7以后有变化字符串常量切到堆里去了、静态变量、JIT(1.7以前-》永久代溢出 Heap注意永久代的颜色和方法区是一样的新生代Edensurvivor from:survivor to 比例为8:1:1但是如果大对象分配内存失败会通过老年代的担保机制直接进入老年代jvm参数设置xms 初始化值 xmx (max)最大值xmn(new)新生代大小
垃圾回收垃圾回收算法是理论垃圾回收器是实践具体的垃圾回收算法的
标记清除产生内存碎片复制算法内存按容量划分为大小相等两块每次只使用其中一块。一块内存用完还存活着的对象复制另外一块然后再把已使用的内存空间一次清理掉。消除了内存碎片现象但是却对内存空间的使用做出了高昂的代价因为能够使用的内存缩减到原来的一半标记整理在完成标记之后它不是直接清理可回收对象而是将存活对象都向一端移动然后清理掉端边界以外的内存分代回收算法根据对象存活的生命周期将内存划分为若干个不同的区域。一般情况下将堆区划分为老年代Tenured Generation和新生代Young Generation大部分垃圾收集器对于新生代都采取复制算法但是新生代的空间不是1:1划分的而是按照8:1:1划分为Eden、survivor1survivor2老年代的特点是每次回收都只回收少量对象一般使用的是标记-整理算法压缩法