j2me 应用程序中出现 OutOfMemoryError

2024-02-26

我正进入(状态OutOfMemoryException在 J2ME 应用程序中。

我怎样才能找到导致此错误的原因?以及如何防止出现此错误?

我发出一个http请求。当请求未完成时,屏幕会显示加载图像(就像浏览器在加载页面时显示的那样)。这是通过创建图像并重新绘制屏幕来完成的。

创建图像 1 -> 重新绘制 -> 创建图像 2-> 重新绘制 -> 创建图像 3 -> 重新绘制 -> 创建图像 1-> 重新绘制 -> 。

我注意到(使用 wtk 内存监视器)这消耗了太多未被垃圾收集的内存。

然后我尝试创建一个类似图像池的类。此类创建所有图像,然后显示它们。

创建图像 1 -> 创建图像 2-> 创建图像 3 -> 重绘 -> 重绘 -> 重绘 -> 重绘 -> 重绘 -> 。

第二种情况似乎没有第一种情况消耗那么多内存。 (使用 wtk 内存监视器)。

但是,我认为(不确定是否是这样)这两种方法都会导致这种情况OutOfMemoryException.


错误的原因是内存不足。很抱歉声明显而易见的事情,但您问了:-)

需要一些源代码才能诊断确切的问题。

您还应该查找代码中进行递归方法调用或在循环内分配内存的部分。递归调用通常会生成 StackOverflowException,但值得一看。不过,在循环内分配内存很快就会导致 OutOfMemoryError。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

j2me 应用程序中出现 OutOfMemoryError 的相关文章

随机推荐

  • 在 Qt 中自定义 AppMenu

    我正在为 MacOS 开发 Qt 应用程序 如何向 menuApp 添加项目 我的意思是出现在苹果图标右侧菜单栏上的条目 我想知道如何在 Qt 中实现这一点 而不是 Objective C 我正在使用 Qt 5 9 这是QWidget应用程
  • 带有选择死锁的嵌套更新

    背景 我正在使用一些代码 似乎deadlock经常与自己在一起 在Java中 它产生一个DeadLockLoserDataAccessException定期地 并且导致死锁的违规语句通常是itself 这是在 InnoDB 的事务中运行的
  • deleteRow 有时会删除右边的行,有时则不会在 Javascript 中删除

    我有一张桌子 每行的末尾都有一个 href X 用于删除该行 这很简单 现在 当您单击任意第 2 行的 X 时 它会删除第 2 行 但是当您单击第 3 行时 它会删除第 4 行 这是我的代码 HTML table align center
  • 构建重新训练的初始 SavedModel 后清空变量文件夹

    我正在尝试导出经过重新训练的初始模型 我读过这个几乎类似的问题here https stackoverflow com questions 43001719 deploy retrained inception savedmodel to
  • 求数组中绝对差值之和最小的一个数

    例如 array a 1 1 10 我们需要找到 x 这样 x 1 x 1 x 10 是最小值 这里 x 是 1 可以用贪心的方法解决吗 比如取平均值或其他方法 注意 取平均值不起作用 why 我只能想出O nlogn 解决方案 二分搜索
  • 默认使用maven静态编译.groovy

    我现在在我们的项目中使用maven编译 groovy 我的 pom xml 是
  • 跟踪 PHP 中的内存使用情况

    我正在尝试跟踪处理 URL 的脚本的内存使用情况 基本思想是在将另一个 URL 添加到 cURL 多重处理程序之前检查是否有合理的缓冲区 我使用 滚动 cURL 概念 在多处理程序运行时处理 URL 数据 这意味着每次现有 URL 处理和删
  • 为什么在这种特殊情况下,instanceof 模式匹配不能与 else if 一起使用?

    以下代码片段无法在 javac 版本 17 Temurin 上编译 class Instanceof static void doesNotWork Object o if o null throw new Error else if o
  • NSPredicate 对一个查询字符串进行多次比较

    我想知道是否有一种方法可以简化 NSPredicate 该 NSPredicate 接受多个比较目标的单个查询字符串 我正在搜索同一查询字符串的核心数据实体的多个属性 我当前的查询看起来像这样 NSPredicate predicateWi
  • 如何在 R 中的并行方法中使用无用的记录器进行记录?

    我在 R 中使用无用的记录器进行日志记录 我有一个使用 R 中的 Snowfall 实现的并行算法 并行进程的每个核心都会在记录器中记录中间输出 但是这个输出没有显示在记录器中 我们可以在使用降雪的并行作业中使用徒劳的记录器进行记录吗 添加
  • Android 初学者应用程序中的 openSearch() 未定义

    我刚刚开始学习 Android 初学者教程 现在面临一个问题 在这一页 http developer android com training basics actionbar adding buttons html Respond在 响应
  • 如何播放组合声音,就像从一群发声物体发出的声音一样

    假设我有 100 个 squeaker 类的实例 每个 吱吱声 物体都能够单独发出吱吱声 每个squeaker实体使用相同的 mp3资源 当所有吱吱声一起出现在屏幕上时 例如作为小角色 我希望它们都大约 但不完全 同时发出吱吱声 以便将它们
  • 逆时针旋转矩阵M*N的每个环

    我无法旋转M N逆时针方向的矩阵 我的代码可以正常工作3 3矩阵 但是当我尝试任何其他情况时 它不起作用假设我正在这样做4 4矩阵 则只有外部元素旋转 内部 4 个元素 即 6 7 10 11 不旋转 我的输入是 1 16 个数字4 4 m
  • mvccontrib grid - 如何添加 id

    我想向我构建的 mvccontrib 网格的 tr 元素添加一个 id tr tr tr tr 因此 如果表包含 10 行 则 id 为 0 到 9 一种方法是向我的实体添加一个附加项目来存储该值 然后将其创建为隐藏列 并将 id 作为该项
  • 有没有更快的方法来生成 .csv 文件作为 groupby 和循环的替代方法?

    我必须生成数十个包含数百万行和数十列的 csv 文件 我目前正在通过执行以下操作来生成文件groupby列 A 和 B 并循环动态生成文件to csv 下面是我正在尝试做的事情的一个例子 有没有更快的技术 我的实际数据帧需要 10 多分钟才
  • Visual Studio 中的版本控制

    我目前正在开发一个大型项目 即将做出一些重大更改 并且正在寻找一种方法来 备份 我之前的工作 Visual Studio 中是否有内置功能可用于版本控制 该项目仅由我开发 并且不使用 Team Foundation Server 这是我大部
  • 如何使用带有要价和出价的 pandas 数据框计算成交量加权平均价格 (VWAP)?

    如果我的表格如下所示 如何创建另一个名为 vwap 的列来计算 vwap time bid size bid ask ask size trade trade size phase 0 2019 01 07 07 45 01 064515
  • 如何获取 JDesktopPane 中 JInternalFrames 的 z 顺序

    如何获取 JDesktopPane 内所有 JInternalFrame 的 z 顺序 层深度 似乎没有直接的方法 有任何想法吗 虽然我还没有尝试过这个 Container http java sun com javase 6 docs a
  • R Quantmod::getFinancials

    我正在使用quantmod包裹 我有一个这样的股票向量 c AAPL GOOG IBM GS AMZN GE 我想创建一个函数来计算股票的息税前利润 营业收入 总收入 因此 对于给定的股票 我使用以下仅适用于 GE 的代码 前提是在股票代码
  • j2me 应用程序中出现 OutOfMemoryError

    我正进入 状态OutOfMemoryException在 J2ME 应用程序中 我怎样才能找到导致此错误的原因 以及如何防止出现此错误 我发出一个http请求 当请求未完成时 屏幕会显示加载图像 就像浏览器在加载页面时显示的那样 这是通过创