OutOfMemory 时生成 java 转储

2023-11-23

我有一个程序最终应该生成OutOfMemory。 程序代码为:

public class VeryLargeObject implements Serializable {
    public static final int SIZE = 1 << 12;

    public String tag;
    public int[][] bigOne = new int[SIZE][SIZE];

    {
        // Initialize bigOne
        for(int i = 0; i < SIZE ; ++i) {
            for(int j = 0; j < SIZE; ++j) {
                bigOne[i][j] = (int) (Math.random() * 100);
            }
        }
    }

    public VeryLargeObject(String tag) {
        this.tag = tag;
    }

    public static void main(String args[]) {
        VeryLargeObject[] vla = new VeryLargeObject[1 << 12];
        for(int i = 0; i < Integer.MAX_VALUE; ++i) {
            vla[i] = new VeryLargeObject("aa");
        }
    }
}

我使用以下参数运行该程序:

java VeryLargeObject -Xms1024m -Xmx1024m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="D:\workspace"

程序因 OutOfMemory 而失败,但未生成转储文件。你知道为什么吗?

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
        at VeryLargeObject.<init>(VeryLargeObject.java:14)
        at VeryLargeObject.main(VeryLargeObject.java:32)

问题是-XX:HeapDumpPath指定一个文件而不是路径。

-Xms1024m -Xmx1024m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="c:\temp\dump2.hprof"

added:

and bestsss也是正确的,所以你需要修复这两个“错误”:

java -Xms1024m -Xmx1024m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="c:\temp\dump2.hprof" VeryLargeObject
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

OutOfMemory 时生成 java 转储 的相关文章

  • Java中ArrayList的交集和并集

    有什么方法可以做到这一点吗 我正在寻找 但没有找到 另一个问题 我需要这些方法 以便我可以过滤文件 有些是AND过滤器 有些是OR过滤器 就像集合论中的那样 所以我需要根据所有文件和保存这些文件的联合 相交 ArrayList 进行过滤 我
  • 按键时关闭 ModalWindow

    我希望能够在用户按下某个键 在我的例子中是 ESC 时关闭 ModalWindow 我有一个用于按键的 Javascript 侦听器 它调用取消按钮 ID 的单击事件 jQuery modalWindowInfo closeButtonId
  • 序列的排列?

    我有具体数量的数字 现在我想以某种方式显示这个序列的所有可能的排列 例如 如果数字数量为3 我想显示 0 0 0 0 0 1 0 0 2 0 1 0 0 1 1 0 1 2 0 2 0 0 2 1 0 2 2 1 0 0 1 0 1 1 0
  • 如何通过 javaconfig 使用 SchedulerFactoryBean.schedulerContextAsMap

    我使用 Spring 4 0 并将项目从 xml 移至 java config 除了访问 Service scheduleService 带注释的类来自QuartzJobBean executeInternal 我必须让它工作的 xml 位
  • 如何循环遍历所有组合,例如48 选择 5 [重复]

    这个问题在这里已经有答案了 可能的重复 如何在java中从大小为n的集合中迭代生成k个元素子集 https stackoverflow com questions 4504974 how to iteratively generate k
  • 为什么 JTables 使 TableModel 在呈现时不可序列化?

    所以最近我正在开发一个工具 供我们配置某些应用程序 它不需要是什么真正令人敬畏的东西 只是一个具有一些 SQL 脚本生成功能并创建几个 XML 文件的基本工具 在此期间 我使用自己的 AbstractTableModel 实现创建了一系列
  • 动态选择端口号?

    在 Java 中 我需要获取端口号以在同一程序的多个实例之间进行通信 现在 我可以简单地选择一些固定的数字并使用它 但我想知道是否有一种方法可以动态选择端口号 这样我就不必打扰我的用户设置端口号 这是我的一个想法 其工作原理如下 有一个固定
  • 过滤两次 Lambda Java

    我有一个清单如下 1 2 3 4 5 6 7 和 预期结果必须是 1 2 3 4 5 6 7 我知道怎么做才能到7点 我的结果 1 2 3 4 5 6 我也想知道如何输入 7 我添加了i gt i objList size 1到我的过滤器
  • jQuery AJAX 调用 Java 方法

    使用 jQuery AJAX 我们可以调用特定的 JAVA 方法 例如从 Action 类 该 Java 方法返回的数据将用于填充一些 HTML 代码 请告诉我是否可以使用 jQuery 轻松完成此操作 就像在 DWR 中一样 此外 对于
  • Java 公历日历更改时区

    我正在尝试设置 HOUR OF DAY 字段并更改 GregorianCalendar 日期对象的时区 GregorianCalendar date new GregorianCalendar TimeZone getTimeZone GM
  • 如何在用户输入数据后重新运行java代码

    嘿 我有一个基本的java 应用程序 显示人们是成年人还是青少年等 我从java开始 在用户输入年龄和字符串后我找不到如何制作它它们被归类为 我希望它重新运行整个过程 以便其他人可以尝试 的节目 我一直在考虑做一个循环 但这对我来说没有用
  • Spring Boot Data JPA 从存储过程接收多个输出参数

    我尝试通过 Spring Boot Data JPA v2 2 6 调用具有多个输出参数的存储过程 但收到错误 DEBUG http nio 8080 exec 1 org hibernate engine jdbc spi SqlStat
  • logcat 中 mSecurityInputMethodService 为 null

    我写了一点android应显示智能手机当前位置 最后已知位置 的应用程序 尽管我复制了示例代码 并尝试了其他几种解决方案 但似乎每次都有相同的错误 我的应用程序由一个按钮组成 按下按钮应该log经度和纬度 但仅对数 mSecurityInp
  • 获取文件的总大小(以字节为单位)[重复]

    这个问题在这里已经有答案了 可能的重复 java 高效获取文件大小 https stackoverflow com questions 116574 java get file size efficiently 我有一个名为 filenam
  • 关键字“table”附近的语法不正确,无法提取结果集

    我使用 SQL Server 创建了一个项目 其中包含以下文件 UserDAO java public class UserDAO private static SessionFactory sessionFactory static se
  • Cucumber 0.4.3 (cuke4duke) 与 java + maven gem 问题

    我最近开始为 Cucumber 安装一个示例项目 并尝试使用 maven java 运行它 我遵循了这个指南 http www goodercode com wp using cucumber tests with maven and ja
  • 我如何在java中读取二进制数据文件

    因此 我正在为学校做一个项目 我需要读取二进制数据文件并使用它来生成角色的统计数据 例如力量和智慧 它的设置是让前 8 位组成一个统计数据 我想知道执行此操作的实际语法是什么 是不是就像读文本文件一样 这样 File file new Fi
  • 在java中为组合框分配键

    我想添加一个JComboBox在 Swing 中这很简单 但我想为组合中的每个项目分配值 我有以下代码 JComboBox jc1 new JComboBox jc1 addItem a jc1 addItem b jc1 addItem
  • 双枢轴快速排序和快速排序有什么区别?

    我以前从未见过双枢轴快速排序 是快速排序的升级版吗 双枢轴快速排序和快速排序有什么区别 我在 Java 文档中找到了这个 排序算法是双枢轴快速排序 作者 弗拉基米尔 雅罗斯拉夫斯基 乔恩 本特利和约书亚 布洛赫 这个算法 在许多数据集上提供
  • Spring Boot 无法更新 azure cosmos db(MongoDb) 上的分片集合

    我的数据库中存在一个集合 documentDev 其分片键为 dNumber 样本文件 id 12831221wadaee23 dNumber 115 processed false 如果我尝试使用以下命令通过任何查询工具更新此文档 db

随机推荐

  • 具有多个数据源的工作单元?

    有可能 甚至很可能 我只是没有完全理解 工作单元 的概念 基本上 我将其视为面向对象环境中使用的广泛事务 启动工作单元 与对象交互 提交或回滚 但这如何分解为这些对象背后的数据存储上的实际事务呢 在具有单个 DB 和 ORM 例如 NHib
  • 在启动 Shiny 应用程序时更改 RStudio 窗口的大小

    我正在使用 RStudio IDE 来开发闪亮的应用程序 启动应用程序时 我通常使用 RunApp 按钮 在窗口中运行 这将在具有特定宽度和高度的窗口中打开应用程序 有没有办法更改此窗口的宽度 以便每次启动应用程序时都会显示在更宽的窗口中
  • C 中运行时的变量名、函数参数

    C 程序运行时是否可以知道函数参数和变量的名称类型 例如 如果我有一个函数 int abc int x float y somestruct z char a int b 我可以知道这个函数的内部吗abc 参数和变量的名称是什么i e 在这
  • Android+Gradle:将目录列出到文件中

    我正在尝试将 ANT 构建中的任务转换为 Gradle
  • 代理对象无法添加到 DOM(陷阱也不会触发)

    我正在尝试做一个Proxy object of Image捕获属性 但即使使用空处理程序 我也会收到错误消息 TypeError Node appendChild 的参数 1 未实现 Node 接口 代理对象应该充当目标对象 所以这让我有点
  • Groovy:使用字符串作为路径设置动态嵌套方法

    我有一个对象内对象内对象的路径 我想使用 Groovy 的动态功能来设置它 通常您只需执行以下操作即可做到这一点 class Foo String bar Foo foo new Foo foo bar foobar 这样就可以了 但是如果
  • 如何制作虚线箭头的动画?

    正如标题所描述的 我正在尝试为虚线箭头设置动画 我希望它看起来尽可能接近这个这个网站 我能够制作箭头 尽管我不确定这是制作此类箭头的正确方法 我假设我必须用 SVG 绘制它 而且动画看起来很奇怪 我不知道如何让它更流畅 我很感激一些帮助的人
  • .h 文件中的重新定义错误

    list h file typedef struct lnode struct lnode next size t row size t column short data lnode typedef struct llist struct
  • 如何更改 Azure Functions (v2) 上的基本“/api”路径?

    在azure函数中 我们创建函数路由 名称 但它始终以 api开头 on the 文档我们读 请注意 您没有在路由模板中包含 api 基本路径前缀 因为这是由全局设置处理的 But 如何更改此基本 api 路径 接受的答案不适用于v2不再
  • 使用 async/await 提交/回滚 knex 事务

    我正在试驾ES7 异步 等待提案 using 该模块去模仿它 我正在努力使knex js作为一个起点 交易与它们配合得很好 示例代码 async function transaction return new Promise functio
  • Html 5 重置 (html5reset.org) - X-UA-Compatible 不起作用

    我正在使用优秀的 HTML 5 Reset 模板 html5reset org我的 X UA Compatible 元标记似乎不起作用 这是我的标题的样子
  • 在 wix 中更改我的组件 GUID?

    我什么时候应该更改或不更改 WIX 中的组件 GUID Microsoft SDK信息令人困惑 格利茨科夫编辑 澄清一下 问题涉及何时应更改 MSI 组件的组件 GUID 组件可以在以下方面进行更改 更改目标路径 在同一组件中添加或删除文件
  • p:密码不会重新显示预填充的模型值

    我有这样的托管 bean ManagedBean SessionScoped public class utilisateur implements Serializable private String login yous privat
  • 将两行之间的文本替换为存储在 sed 变量中的文件内容

    假设我有一个名为original txt包含以下内容 red blue water food tree gray white 我还有一个名为new txt包含以下内容 green black yellow purple 现在我想编写一个脚本
  • 找不到开发人员磁盘映像堆栈溢出 xcode 7.2,iOS 9.3.1 [重复]

    这个问题在这里已经有答案了 将我的设备更新到 iOS 9 3 1 Xcode 后 给出 无法找到开发人员磁盘映像 我使用的是 xcode 7 2 请帮忙 您需要下载 Xcode v 7 3 使用 gt 9 3 iOS 版本 并升级到 Xco
  • Pyspark:选择特定列及其位置

    我想知道如何在数据框中选择具有编号但不具有名称的特定列 在 Pandas 中是这样的 df df iloc 2 这是可能的 您始终可以使用以下方式获取列的名称df columns n 进而select it df spark createD
  • scala - 从字符串中获取类

    在 Scala 中 我使用一个需要类参数的 Java 库 例子 def service OAuthService new ServiceBuilder provider classOf RunApi RunApi 是 Java 类 不过 我
  • 如何开通区域监控服务?

    我稍微简化了问题 当我在应用程序中创建和添加区域并询问这些区域的状态时 我在中看到以下内容monitoringDidFailForRegion方法 The operation couldn t be completed kCLErrorDo
  • 在 CVS 预提交挂钩中使用提交消息

    是否可以在 CVS 的预提交挂钩中使用提交消息 CVS 服务器正在远程运行 我使用以下命令访问它pserver 理想情况下 如果文件通过过滤器 我希望允许提交or提交消息包含特定文本 我没有选择使用其他版本控制系统 以下是一些有用的教程 供
  • OutOfMemory 时生成 java 转储

    我有一个程序最终应该生成OutOfMemory 程序代码为 public class VeryLargeObject implements Serializable public static final int SIZE 1 lt lt