不同版本的JDK的内存区域有什么不同?
为了优化 JVM 性能、简化 Java 应用的内存管理,并解决因为永久代有固定大小限制而导致的内存溢出问题。为此,在JDK升级过程中,逐渐用元空间取代了永久带。这样,JVM 的垃圾收集器可以更高效地管理内存,尤其是在处理大量动态生成类的应用程序时(例如,使用大量反射或动态代理技术的应用)。
作者:帅旋
|
发表于 2024-08-27
|
分类于  JVM
不同版本的JDK的内存区域有什么不同?
Class元数据和Class实例有什么区别?
当我们在代码中使用反射时,肯定会用到Class实例,那么大家有没有想过,这究竟是什么东西呢?跟类的元数据有什么区别?
作者:帅旋
|
发表于 2024-08-27
|
分类于  JVM
Class元数据和Class实例有什么区别?
说说JVM的内存区域划分?是如何工作的?
这个问题是Java开发的基本功了,如果连堆和栈在 JVM 里的作用都不清楚,那真有点说不过去了。JVM内存区域分为线程私有的部分和现成共享的部分。下面这个图是我之前JVM系列里面画的,再引用下:
作者:帅旋
|
发表于 2024-08-22
|
分类于  JVM
说说JVM的内存区域划分?是如何工作的?
说说常见的发生内存泄露的原因
内存泄漏是一个普遍存在于许多应用程序中的问题,它会导致程序随着时间的推移运行变慢并最终可能因资源耗尽而崩溃。以下是一些常见的内存泄漏原因:
作者:帅旋
|
发表于 2024-04-21
|
分类于  JVM
说说常见的发生内存泄露的原因
内存溢出和内存泄露的区别是啥?
定义:内存泄漏是指已分配的内存未能被释放回操作系统或内存池,通常是由于程序中的引用关系错误导致的。虽然程序不再使用这部分内存,但由于某些原因(如意外的强引用),垃圾回收器无法回收这些内存。这使得这部分内存持续占用,并无法被系统重新利用。 影响:内存泄漏会逐渐消耗系统的可用内存。长期存在内存泄漏可能导致系统性能下降,甚至可能最终导致内存溢出。
作者:帅旋
|
发表于 2024-04-21
|
分类于  JVM
内存溢出和内存泄露的区别是啥?
Java对象是如何被访问定位的?
Java对象的访问定位是JVM内存管理的核心机制之一,直接关系到程序性能与GC效率。JVM规范未强制规定具体实现方式,这为不同虚拟机提供了优化空间。
作者:帅旋
|
发表于 2024-04-21
|
分类于  JVM
Java对象是如何被访问定位的?
如何快速掌握JVM
作者:帅旋
|
发表于 2024-01-15
|
分类于  JVM
如何快速掌握JVM
10分钟教你如何hack掉Java编译器
如标题所述,我们如何才能hack掉java编译器,也就是javac呢?为了摸索到这个套路,我们需要从一般的编译流程,javac的编译流程,以及插入式注解处理器说起,最后通过一个例子演示如何在编译期间篡改代码,并且介绍业界常见的应用场景。读完该篇文章,你可以了解到:
作者:帅旋
|
发表于 2020-01-31
|
分类于  JVM
10分钟教你如何hack掉Java编译器
深入理解运行时栈帧结构 | 栈帧,操作数栈,本地变量表
在 JVM运行时数据区是如何工作的 这节中,我们已经见过运行时栈帧结构的面貌了,现在我们再来深入的了解一下有关它的故事。
作者:帅旋
|
发表于 2020-01-11
|
分类于  JVM
深入理解运行时栈帧结构 | 栈帧,操作数栈,本地变量表
JVM是如何进行方法调用的 | 静态分派,动态分派
思考: JVM里面是如何进行方法调用的? 什么是静态分派?什么是动态分派? 怎么保证动态分派的执行效率? 重写和重载的执行原理?
作者:帅旋
|
发表于 2020-01-11
|
分类于  JVM
JVM是如何进行方法调用的 | 静态分派,动态分派
12345
×
IT宅

关注公众号及时获取网站内容更新。

请帅旋喝一杯咖啡

咖啡=电量,给帅旋充杯咖啡,他会满电写代码!

IT宅

关注公众号及时获取网站内容更新。