OOM(Out of Memory)是Java应用程序中常见的一个错误,表示程序试图分配的内存超出了Java虚… 继续阅读 有哪些手段来排查 OOM 的问题?
分类: JVM
Java中的强引用、软引用、弱引用、虚引用怎么理解
在Java中,引用类型不仅仅是我们通常理解的直接引用一个对象的方式。实际上,Java提供了四种类型的引用:强引… 继续阅读 Java中的强引用、软引用、弱引用、虚引用怎么理解
什么是线程?它是如何工作的?代码举例讲解
线程(Thread)是进程内的一条执行路径,它是CPU调度和执行的基本单位。一个进程可以包含多条线程,线程共享… 继续阅读 什么是线程?它是如何工作的?代码举例讲解
什么是线程栈?它的作用是什么?代码举例讲解
线程栈(Thread Stack)是线程运行时所占用的栈内存,它存储线程中方法调用的栈帧信息。每个线程启动后,… 继续阅读 什么是线程栈?它的作用是什么?代码举例讲解
什么是栈帧?它的作用是什么?代码举例讲解
栈帧是指在计算机科学中,用于存储函数调用信息的一种数据结构。当一个函数被调用时,编译器会在栈中创建一个新的栈帧… 继续阅读 什么是栈帧?它的作用是什么?代码举例讲解
什么是逃逸分析?它的作用是什么?代码举例讲解
逃逸分析(Escape Analysis)是Java虚拟机对对象动态作用域的分析,它可以判断一个对象的作用域是… 继续阅读 什么是逃逸分析?它的作用是什么?代码举例讲解
什么是字符串常量池?它的作用是什么?代码举例讲解
字符串常量池(String Constant Pool)是方法区的一部分,用于存储字符串常量。它的主要作用是节… 继续阅读 什么是字符串常量池?它的作用是什么?代码举例讲解
什么是方法区?它的作用是什么?代码举例讲解
方法区(Method Area)是JVM内存结构的一部分,它用于存储类加载器、常量、静态变量、类信息(类名、访… 继续阅读 什么是方法区?它的作用是什么?代码举例讲解
什么是内存泄漏?它是如何产生的?代码举例讲解
内存泄漏指程序未能释放已经不再使用的内存,导致占用的内存量不断增加,严重时会耗尽可用内存。 内存泄漏的常见原因… 继续阅读 什么是内存泄漏?它是如何产生的?代码举例讲解
什么是内存溢出?它是如何产生的?代码举例讲解
内存溢出(Memory Overflow)是程序运行时所申请的内存超出系统容许的最大值。它会导致程序运行异常,… 继续阅读 什么是内存溢出?它是如何产生的?代码举例讲解
什么是OOM?它是如何产生的?代码举例讲解
OOM(OutOfMemoryError)是Java堆内存溢出异常。它是由JVM抛出的,表示程序试图申请的内存… 继续阅读 什么是OOM?它是如何产生的?代码举例讲解
什么是元空间?它的作用是什么?代码举例讲解
元空间(Metaspace)是JDK 8引入的,用来替代永久代。它的主要作用是存储类加载器及类信息(如类的元数… 继续阅读 什么是元空间?它的作用是什么?代码举例讲解
什么是永久代?它的作用是什么?代码举例讲解
永久代(Permanent Generation)是HotSpot JVM早期的垃圾收集器结构。它的主要作用是… 继续阅读 什么是永久代?它的作用是什么?代码举例讲解
什么是虚引用?它的作用是什么?代码举例讲解
虚引用(PhantomReference)是最弱的一种引用,它唯一的作用是跟踪对象被垃圾回收的活动。虚引用与软… 继续阅读 什么是虚引用?它的作用是什么?代码举例讲解
什么是强引用?它的作用是什么?代码举例讲解
强引用(Strong Reference)是我们最常见的普通引用,它会无条件地使对象具有引用语义。只要强引用存… 继续阅读 什么是强引用?它的作用是什么?代码举例讲解
什么是软引用?它的作用是什么?代码举例讲解
软引用(SoftReference)是一种比弱引用生存期更长的引用。只有当JVM进行垃圾回收时,空间不足时,才… 继续阅读 什么是软引用?它的作用是什么?代码举例讲解
什么是弱引用?它的作用是什么?代码举例讲解
弱引用(WeakReference)是一种特殊的引用,它的存在不影响对象的回收。只要垃圾回收机制一运行,无论J… 继续阅读 什么是弱引用?它的作用是什么?代码举例讲解
什么是垃圾收集器的GC Roots?它们有哪些类型?代码举例讲解
GC Roots是垃圾回收器用来判断对象是否可达的起始点。它们包括: 虚拟机栈中引用的对象:如本地变量、方法参… 继续阅读 什么是垃圾收集器的GC Roots?它们有哪些类型?代码举例讲解
什么是垃圾回收器的触发条件?代码举例讲解
垃圾回收器的触发条件主要有两种: 内存使用达到一定比例:当堆内存使用率达到一定阈值时,垃圾回收器会自动启动进行… 继续阅读 什么是垃圾回收器的触发条件?代码举例讲解
垃圾回收的算法有哪些?它们的优缺点是什么?代码举例讲解
Java虚拟机常用的垃圾回收算法有: 标记清除算法:两步操作,首先标记所有可达对象,然后清除所有未标记对象。优… 继续阅读 垃圾回收的算法有哪些?它们的优缺点是什么?代码举例讲解