1. JVM的体系结构 其中栈区由于函数返回后就会出栈,因此不会存在垃圾回收。垃圾回收主要针对的是堆区的回收。 JNI:Java Native Interface,通过使用Java本地接口书写程序,可以确保代码在不同的平台上方便移植。 2. 类加载器 类的生命周期 类的加载过程详细参考Class文件 ...
分类:
其他好文 时间:
2021-03-02 12:30:06
阅读次数:
0
前言 Java 相比 C/C++ 最显著的特点便是引入了自动垃圾回收 (下文统一用 GC 指代自动垃圾回收),它解决了 C/C++ 最令人头疼的内存管理问题,让程序员专注于程序本身,不用关心内存回收这些恼人的问题,这也是 Java 能大行其道的重要原因之一,GC 真正让程序员的生产力得到了释放,但是 ...
分类:
编程语言 时间:
2021-03-01 14:04:44
阅读次数:
0
.NET Core 两种GC模式: Server GC / Workstation GC Server GC : 主要应用于多处理器系统,并且作为ASP.NET Core宿主的默认配置。它会为每个处理器都创建一个GC Heap,并且会并行执行回收操作。该模式的GC可以最大化吞吐量和较好的收缩性。这种 ...
分类:
Web程序 时间:
2021-02-24 13:03:43
阅读次数:
0
这篇文章中讨论了,在默认情况下,ASP.NET Core程序跑在K8s的Docker中内存使用率>=600MB,导致Docker容器频繁重启。并探讨并做了将ASP.NET Core项目配置System.GC.Server设置为False后,内存小于<=150MB的实验。 这文主要讲下什么是Syste ...
分类:
Web程序 时间:
2021-02-24 13:02:39
阅读次数:
0
第一次标记 在进行可达性分析之后发现没有与GC Roots相连接的引用链 筛选 第一次标记后,筛选此对象是否有比要执行finalize()方法 没有必要执行finalize()方法的对象 对象没有覆盖finalize()方法 finalize()方法已经被虚拟机调用过 有必要的对象进入F-Queue ...
分类:
其他好文 时间:
2021-02-22 11:46:59
阅读次数:
0
参考原博文:https://blog.csdn.net/weixin_34026276/article/details/85930598 Java VisualVM默认没有安装Visual GC插件,需要手动安装,JDK的安装目录的bin目录下双击jvisualvm.exe,即可打开Java Vis ...
分类:
其他好文 时间:
2021-02-20 12:43:16
阅读次数:
0
valgrind是很好的检查内存泄漏的工具 使用命令: $ valgrind --tool=memcheck --log-file=/root/valgrind_log_all --leak-check=full --error-limit=no --show-reachable=yes --tra ...
分类:
其他好文 时间:
2021-02-19 13:36:36
阅读次数:
0
1.Mark-Sweep算法 整个算法分为标记和清除两个部分。 标记阶段采用可达性分析算法。可达性分析算法从GC roots出发,寻找引用的对象,如果对象被遍历到,则标记。 清除阶段对目标空间进行遍历,若对象没有被标记过,则清除该对象。时间复杂度为O(n),结果会导致空间中存在大量碎片(零碎空间), ...
分类:
编程语言 时间:
2021-02-15 12:21:19
阅读次数:
0
Xtool X100 Pad2 Pro full version adds VW 4th/5th generation immobilizer programming. It’s a professional key programmer for workshop with special func ...
分类:
其他好文 时间:
2021-02-10 13:33:59
阅读次数:
0
Java 对象分配流程 我们这里不考虑栈上分配,这些会在 JIT 的章节详细分析,我们这里考虑的是无法栈上分配需要共享的对象。 对于 HotSpot JVM 实现,所有的 GC 算法的实现都是一种对于堆内存的管理,也就是都实现了一种堆的抽象,它们都实现了接口 CollectedHeap。当分配一个对 ...
分类:
其他好文 时间:
2021-02-10 13:28:30
阅读次数:
0