上一页 1 2 3 4 5 6 7 8 ··· 18 下一页
摘要: java虚拟机中,将符号引用转换为调用方法的直接引用与方法绑定机制相关。 静态链接: 当一个字节码文件被装载到jvm内部时,如果被调用的目标方法在编译器可知,且运行期保持不变时。这种情况下将调用方法的符号引用转换为直接引用的过程称之为静态链接。 动态链接: 如果被调用的方法在编译期无法被确定下来,也 阅读全文
posted @ 2020-08-29 19:34 宇枫 阅读(421) 评论(0) 推荐(0) 编辑
摘要: 基于栈式架构的虚拟机所使用的零地址指令更加紧凑,但完成一项操作的时候必然需要使用更多的入栈和出栈指令,这同时也就意味着将需要更多的指令分派(instruction dispatch)次数和内存读/写次数。 由于操作数是存储在内存中的,因此频繁地执行内存读/写操作必然会影响执行速度。为了解决这个问题, 阅读全文
posted @ 2020-08-27 21:36 宇枫 阅读(878) 评论(1) 推荐(0) 编辑
摘要: import java.lang.management.ManagementFactory; import java.net.InetAddress; import java.net.NetworkInterface; /** * Twitter_Snowflake<br> * SnowFlake的 阅读全文
posted @ 2020-08-27 18:12 宇枫 阅读(307) 评论(0) 推荐(0) 编辑
摘要: GCIH全称:GC-Invisible Heap ,词义上GC达不到的堆,就是不用GC去收集堆内存,是一种堆内存共享技术 由AJDK,阿里的jdk,基于openJDK开发优化 一篇关于GCIH的详细介绍:https://blog.csdn.net/kkgbn/article/details/2480 阅读全文
posted @ 2020-08-25 14:30 宇枫 阅读(1667) 评论(0) 推荐(0) 编辑
摘要: 栈出现的背景: 由于跨平台型的设计,java的指令都是根据栈来设计的.不同平台cpu架构不同,所以不能设计为基于寄存器的指令; 优点是跨平台,指令集小,编译器容易实现,缺点是性能下降,实现同样的功能需要更多的指令; 栈和堆 栈是运行时的单位,堆是存储的单位 栈解决程序的运行问题,即程序如何执行,或者 阅读全文
posted @ 2020-08-24 21:39 宇枫 阅读(352) 评论(0) 推荐(0) 编辑
摘要: 1.虚拟机线程:这种线程的操作是需要jvm达到安全点才会出现.这些操作必须在不同的线程发生的原因是他么都需要jvm达到安全点,这样堆才不会变化.这种的执行类型包括"stop-the-world"的垃圾收集,,线程栈的收集,线程挂起以及偏向锁撤销; 2.周期任务线程:这种线程是时间周期事件的体现(比如 阅读全文
posted @ 2020-08-23 15:28 宇枫 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 运行时数据区: java虚拟机定义了若干程序运行期间会使用到运行时数据区,其中有一些会随着虚拟机的启动而创建,随着虚拟机的退出而销毁。另外一些则跟线程有关,这些线程对应的数据区会随着线程的创建和结束而创建和摧毁。 每个线程:独立包括程序计数器,栈,本地栈 线程间共享:堆,堆外内存(永久代或元空间,代 阅读全文
posted @ 2020-08-23 15:02 宇枫 阅读(167) 评论(0) 推荐(0) 编辑
摘要: java虚拟机对class文件采用的是按需加载的方式,也就是说当需要使用到该类的时候才会将他的class文件加载到内存生成class对象。而加载某个类时,java虚拟机采用的是双亲委派模式,即把请求交给父类处理,它是一种任务委派处理。 原理: 1.如果一个类加载器收到类加载请求,他并不会自己先去加载 阅读全文
posted @ 2020-08-23 12:36 宇枫 阅读(219) 评论(0) 推荐(0) 编辑
摘要: public static void main(String[] args) { try { //1. ClassLoader classLoader = Class.forName("java.lang.String").getClassLoader(); System.out.println(c 阅读全文
posted @ 2020-08-22 21:57 宇枫 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 使用场景: 1.隔离加载类 2.修改类加载的方式 3.扩展加载源 4.防止源码泄露 public class CustomClassLoader extends ClassLoader { @Override protected Class<?> findClass(String name) thr 阅读全文
posted @ 2020-08-22 21:51 宇枫 阅读(650) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 18 下一页