gpt4 book ai didi

java - 大数组 - 内存不足错误

转载 作者:太空狗 更新时间:2023-10-29 12:49:08 24 4
gpt4 key购买 nike

我正在为单个特定手机编写 Android 应用程序(只需要在我的个人手机上运行),我需要使用以下大型数组,我想使用它来有效地将 RGB 颜色转换为 HSV:

RainbowTable = new float[256*256*266][3];

这个数组的总大小应该是 256*256*256*3*4B = 201326592B = 192MB。根据 Android 任务管理器,当我调试该应用程序时,我遇到了一个内存不足异常,尽管在​​执行该应用程序之前仍有大约 300MB RAM 空闲。

我已经在 list 文件中将 large-heap 选项设置为 true

我该怎么做才能避免此错误并保留所需的 RAM 量?

编辑:我的手机已获得 root 权限,因此可能会增加每个应用程序的内存堆大小。

最佳答案

每个设备都有最大的每个应用程序 RAM 上限。如果 list 中的此调用不能缓解您的问题:

android:largeHeap="true"

那么您唯一的选择就是使用 NDK 编写代码。但要深入研究这是一件非常艰巨的事情,所以我会先尝试找出替代方案。

关于java - 大数组 - 内存不足错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14405295/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com