上一页 1 ··· 24 25 26 27 28 29 30 31 32 ··· 113 下一页
摘要: 说说逃逸分析和栈上分配 逃逸分析: 它是可以有效减少java程序中同步负载和内存堆分配压力的跨函数全局数据流分析算法。它能够分析出一个新的对象的引用的使用范围从而决定是否要将这个对象分配到堆上。 当一个对象在方法中被定义后,对象只在方法内部使用,则认为没有发生逃逸。 当一个对象在方法中被定义后,它被 阅读全文
posted @ 2020-12-17 13:39 天宇轩-王 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 为什么会有TLAB(Thread Local Allocation Buffer)? • 堆区是线程共享区域,任何线程都可以访问到堆区中的共享数据; • 由于对象实例的创建在JVM中十分频繁,一次在并发环境下从堆区中划分内存空间是线程不安全的; • 为避免多个线程操作同一地址,需要使用加锁等机制,进 阅读全文
posted @ 2020-12-17 10:26 天宇轩-王 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 你了解对象分配规则吗 为新对象分配内存是一个非常严谨和复杂的任务,JVM的设计者们不仅需要考虑内存如何分配、在哪里分配等问题,并且由于内存分配算法与内存回收算法密切相关,所以还需要考虑GC执行完内存回收是否会在内存空间中产生内存碎片。 对象优先分配在Eden区,如果Eden区没有足够的空间时,虚拟机 阅读全文
posted @ 2020-12-17 10:09 天宇轩-王 阅读(163) 评论(0) 推荐(0) 编辑
摘要: Java 对象的创建过程 1.1 类加载 虚拟机遇到new指令,首先检查这个指令的参数能否在元空间的常量池中定位到一个类的符号引用,并且看这个符号引用的类是否已经被加载,解析和初始化。如果没有,那么在双亲委派模式下,查找对应的class文件。 1.2 分配内存 对象所需内存大小根据加载的类来确定,为 阅读全文
posted @ 2020-12-17 00:59 天宇轩-王 阅读(303) 评论(0) 推荐(0) 编辑
摘要: Minor GC、Major GC、Full GC Minor GC 当年轻代空间不足时,就会触发Minor GC,这里的年轻代满指的是Eden满,Survivor满不会触发GC。(每次Minor GC 会清理年轻代的内存) 因为Java对象大多都具备朝生熄灭的特性,所以Minor GC非常频繁,一 阅读全文
posted @ 2020-12-17 00:18 天宇轩-王 阅读(852) 评论(3) 推荐(0) 编辑
摘要: 说说常见的垃圾回收算法 标记-清除算法 标记:Collector从引用根节点开始遍历,标记所有引用的对象。一般是在对象的header中记录为可达对象。 清除:Collector对堆内存从头到尾进行线性的遍历,如果发现某个对象在其Header中没有标记为可达对象,则对其回收。 缺点 效率不高,标记和清 阅读全文
posted @ 2020-12-16 22:10 天宇轩-王 阅读(183) 评论(1) 推荐(0) 编辑
摘要: ![](https://img2020.cnblogs.com/blog/1829785/202012/1829785-20201216093631362-1412361734.png) ![](https://img2020.cnblogs.com/blog/1829785/202012/1829785-20201216093813834-763593099.png) ![](https://i 阅读全文
posted @ 2020-12-16 18:40 天宇轩-王 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 你了解WeakHashMap吗 WeakHashMap正是由于使用的是弱引用,因此它的对象可能被随时回收。在缓存场景下,由于内存是有限的,不能缓存所有对象,因此就需要一定的删除机制,淘汰掉一些对象。允许null键。 下面我们就来看看,WeakHashMap是如何实现这些功能。 Entry作用 //继 阅读全文
posted @ 2020-12-15 23:41 天宇轩-王 阅读(121) 评论(0) 推荐(0) 编辑
摘要: JVM怎么判断对象是否存活 引用计数算法 引用计数算法比较简单,对每个对象保存一个整型的引用计算器属性。用于记录对象背应用的情况。 对于一个对象A,只要有任何一个对象引用了A,则A的引用计数器就加1;当引用失效时,引用计数器就减少1.只要对象A的引用计数器的值为0,便表示对象A不可能再被使用,可进行 阅读全文
posted @ 2020-12-15 22:26 天宇轩-王 阅读(184) 评论(0) 推荐(1) 编辑
摘要: Builder模式,例如SqlSessionFactoryBuilder、XMLConfigBuilder、XMLMapperBuilder、XMLStatementBuilder、CacheBuilder; 工厂模式,例如SqlSessionFactory、ObjectFactory、Mapper 阅读全文
posted @ 2020-12-15 20:52 天宇轩-王 阅读(76) 评论(0) 推荐(0) 编辑
上一页 1 ··· 24 25 26 27 28 29 30 31 32 ··· 113 下一页