请问 JAVA 中 元空间 和 直接内存 均是在 JVM 外开辟的高速内存区,那他们是什么关系?包含?同级?还是双方都指同一块内存?
3条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
huxin889 2019-06-27 17:39最佳回答 专家已采纳metaspace是从Jdk1.8引入的,大约类似jdk1.7以前的permspace,但permspace是JVM的一部分,是有可能发生OOM的,但metaspace直接使用物理类存
理论上来说只要物理内存足够大,是不会发生OOM的,但这也不能滥用,要不然会耗尽物理内存,但总的来说,metaspace相对于permspace确实
降低了发生OOM的概率采纳该答案 已采纳该答案 专家已采纳评论解决 3 无用 5打赏举报微信扫一扫
分享评论登录 后可回复...
查看更多回答(2条)
报告相同问题?
提交
相关推荐 更多相似问题
- 2011-05-10 17:25回答 3 已采纳 下面的代码 得JDK1.6以上的 [code="java"]double used = ((file.getTotalSpace() - file.getFreeSpace()) / 1024.
- 2011-10-28 16:02回答 3 已采纳 [quote]1、java对象静态变量在jvm的什么区? [/quote] 从JVMS角度而言是在方法区(Method Area),对于特定的实现的话,例如Oracle HotSpot而言是在持久区
- 2011-05-31 09:21回答 2 已采纳 先垃圾回收、整理内存碎片,如果还不够那就溢出了
- 2010-06-13 14:53回答 2 已采纳 [code="java"] import java.util.ArrayList; import java.util.List; public class MemoryTest {
- 2010-10-19 14:12回答 2 已采纳 我觉得这种情况一般都是被测试场景的原因比较多一点。 1.是否测试流程没有走完就报错了(有可能自动测试逻辑里面有闭环?)。 2.有可能是多线测试环境程造成的并发环境下的原因。手工测试一般都是单线
- 2014-11-04 00:39回答 2 已采纳 使用jdk自带的javap查看字节码: 源文件: package com.an; public class TestJavacVerbose { public static void
- 2011-01-05 15:13回答 4 已采纳 一、简单数据类型间的转换 两种数据类型相互转换首先要类型兼容。根据目的数据类型的范围与原数据类型的范围,将类型转换分自动类型转换(放大转换)和强制类型转换(缩小转换)。 举一个例子:把一个小的东
- 2010-07-22 14:40回答 2 已采纳 大致修改了下,如果还是很慢,建议你研究下你的SQL,因为写文件是耗不了多少时间的 [code="java"]Statement stmt = ds.getConnection().cr
- 2021-10-06 18:48回答 1 已采纳 9 class class1(): def __init__(self,num): self.num=num def function1(self): r
- 2010-04-07 16:51回答 3 已采纳 你还是用工具测吧,用事实说话
- 没有解决我的问题, 去提问