最近网上出现一个美团面试题:“一个线程OOM后,其他线程还能运行吗?”。我看网上出现了很多不靠谱的答案。这道题其实很有难度,涉及的知识点有jvm内存分配、作用域、gc等,不是简单的是与否的问题。 由于题目中给出的OOM,java中OOM又分很多类型;比如:堆溢出 ...
转载注明:http: dwz.win gHc 最近网上出现一个美团面试题: 一个线程OOM后,其他线程还能运行吗 。我看网上出现了很多不靠谱的答案。这道题其实很有难度,涉及的知识点有jvm内存分配 作用域 gc等,不是简单的是与否的问题。 由于题目中给出的OOM,java中OOM又分很多类型 比如:堆溢出 java.lang.OutOfMemoryError: Java heap space 永久 ...
2019-08-19 22:43 1 506 推荐指数:
最近网上出现一个美团面试题:“一个线程OOM后,其他线程还能运行吗?”。我看网上出现了很多不靠谱的答案。这道题其实很有难度,涉及的知识点有jvm内存分配、作用域、gc等,不是简单的是与否的问题。 由于题目中给出的OOM,java中OOM又分很多类型;比如:堆溢出 ...
出处: http://www.jianshu.com/p/cd705f88cf2a 1、内存溢出和内存泄漏的区别 内存溢出 (Out Of Memory):是指程序在申请内存时,没有足够的内存空间供其使用,出现Out Of Memory。 内存泄露 (Memory Leak ...
java把内存划分为两种:一种是栈(stack)内存,一种是堆(heap)内存 在函数中定义的一些基本类型的变量和对象的引用变量都在栈内存中分配,当在一段代码块定义一个变量时,java就在栈中为这个变量分配内存空间,当超过变量的作用域后,java会自动释放掉为该变量所分配的内存 ...
第一部分:面试题 本篇文章我们将尝试回答以下问题: 描述一下jvm的内存结构 描述一下jvm的内存模型 谈一下你对常量池的理解 什么情况下会发生栈内存溢出?和内存溢出有什么不同? String str = new String(“abc”)创建了多少个实例? 第二部 ...
5.JVM面试题 1、JVM三大性能调优参数,JVM 几个重要的参数2、JVM调优3、JVM内存管理,JVM的常见的垃圾收集器,G1垃圾收集器。GC调优,Minor GC ,Full GC 触发条件4、java内存模型5、Java垃圾回收机制6、jvm怎样 判断一个对象是否可回收,怎样的对象 ...
https://blog.csdn.net/yanpenglei/article/details/119406377 参考 https://www.cnblogs.com/dolphin0520/p/3613043.html JVM的内存区域划分 写的很好 ...
一、JVM运行时区域 其中, 线程私有的:程序计数器,虚拟机栈,本地方法栈 线程共享的:堆,方法区,直接内存 1 程序计数器 程序计数器是一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器。字节码解释器工作时通过改变这个计数器的值来选取 ...
在上一章中我们介绍了JVM运行时参数以及jstat指令相关内容:[JVM教程与调优] 什么是JVM运行时参数?。下面我们来介绍一下jmap+MAT内存溢出。 首先我们来介绍一下下JVM的内存结构。 JVM内存结构介绍 从图中我们可以看到,JVM的内存结构分为两大块。一块叫堆区,一块叫非 ...