问题标签 [low-memory]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
245 浏览

ipad - 测试 iPad 应用程序

这里有点硬件问题。我正在为客户开发 iPad 应用程序,并且发现当我发送 beta 版本供客户测试时,他发现他的设备上的崩溃比我看到的要多得多。很多这些崩溃都是“低内存崩溃”,我根本看不到/无法重现。

我想知道这两种设备之间可能存在什么差异,以便我们可以确定它是否是硬件问题。有任何想法吗?

0 投票
7 回答
13363 浏览

android - Android:内存不足的静态变量null

我有一个包含一些静态变量的应用程序。这些变量存储在一个名为 DataContext 的独立类中。这些变量在应用程序启动时从原始文件初始化(在扩展 Application 的 MyApplication 的 onCreate() 中调用名为 DataContext.initConstant() 的方法)。

(编辑:initConstant 方法使用 AsyncTask 从文件中加载此数据)。

当我的应用程序进入后台一段时间或当我的应用程序使用大量内存时,这些静态变量变为空。

  1. 如何预防?

  2. 如果不是,我应该如何处理我的静态变量?

    我有其他数据存储在静态变量中以在不同的活动中使用,但我清除它们或将它们传递给onLowMemory()MyApplication 中的 null。

  3. 如果这些数据太大而无法在 Intent 中序列化、无法使用数据库(无论出于何种原因)并且也无法通过序列化存储在文件中,那么保持活动之间可访问的一些数据的最佳方法是什么?

0 投票
6 回答
5472 浏览

embedded - 对于低内存使用,康威生命游戏的有效实现是什么?

我正在寻找一种快速且内存高效的方法来实现康威的生命游戏。

限制条件:一块 96x128 板、大约 2kB 可用 RAM 和 52MHz 处理器(请参阅此处的技术规格:http: //www.getinpulse.com/features)。

我当前将每个单元格表示为矩阵中的单个位(96*128/8=1,536 字节)的幼稚解决方案有效,但速度太慢。可以使用哪些技巧来提高性能?

存储活细胞的坐标(例如在这个实现中http://dotat.at/prog/life/life.html)会占用太多内存。

0 投票
1 回答
2889 浏览

android - 未调用 Application.onLowMemory()

我已经创建了自己的应用程序类。

我尝试对其进行调试,代码在 Application.onCreate() 处停止,但并未在 onLowMemory 处停止。

为了测试这个场景,我打开了很多其他的高内存应用程序。

我看到的是调试会话终止(在 eclipse 中)并且我的一些静态变量变成了 null - 表明进程已经结束。

不仅调试没有停止@方法的断点,我还放了一个 Log.e(...) 行并且也没有看到它。

知道为什么没有调用该方法吗?

谢谢。

0 投票
1 回答
1582 浏览

memory-management - \KernelObjects\LowMemoryCondition & \KernelObjects\MaximumCommitCondition

我有一个应用程序在 Windows Server 2008 R2 机器上作为服务运行,64 位版本和 32GB 内存。

应用程序本身似乎没有使用超过 3.4GB 的内存(可疑的限制?)

在资源监视器中,应用程序显示

事件,即使服务器上有 27192MB 的可用内存。

我只是坚持使用为 32 位操作系统编写的应用程序吗?

0 投票
4 回答
606 浏览

c++ - c++ 在低内存系统上。标准库正在使用所有内存!

我需要尽可能多地削减内存。我正在使用带有 STL 的标准 C++。该程序没有做太多(还),它仍然需要 960Kb [根据top]!可执行文件大小仅为 64KB。

代码有 3000 行长,我显然不会发布。我相信问题不在于我的代码,而在于系统库。

一个 main() 函数(包括我的所有代码但不使用它)使用 732Kb 的 RAM
简单代码:

我的代码没有全局变量(除了对我隐藏的库中的变量)。

我正在使用标准库:libstdc++ (STL)、GNU libc。还有一个 BSD 套接字和 libev 以及非标准的 STL 绳索类。

我可以运行一些内存分析器吗?

平台:Linux 2.6.18-32,32 位处理器,16MB 总系统 RAM,无可用交换
编译器:GCC 4
标准库:GCC 的 libstdc++
编译器选项:-Os(无调试符号)

没有大量使用模板:容器和迭代器仅此而已。但是,我正在大量使用 SGI STL 绳索类。

测试环境是运行 Linux 的基本服务器,内存为 128MB,Pentium III 667 Mhz,CentOS 5.5,无仿真。

更新:我想知道库本身(代码大小)是否导致问题。共享库不需要加载到 RAM 中吗?

0 投票
2 回答
229 浏览

ios - 由于 iPhone 内存不足,核心数据模型更新崩溃

我的 iPhone 应用更新具有我的核心数据存储模型的新版本。我正在使用自定义 NSEntityMigrationPolicy。然而,在较旧的 iDevice 上存储大量核心数据(即内存较少)时,由于内存不足,它会在更新过程中崩溃。有什么策略可以解决这个问题?

0 投票
6 回答
14349 浏览

ios - 内存映射文件和低内存方案

iOS平台在低内存场景下如何处理内存映射文件?低内存场景是指操作系统向UIApplicationDidReceiveMemoryWarningNotification应用程序中的所有观察者发送通知时。

我们的文件使用 映射到内存中+[NSData dataWithContentsOfMappedFile:],文档说明:

映射文件使用虚拟内存技术来避免将文件的页面复制到内存中,直到实际需要它们。

这是否意味着操作系统也会在页面不再使用时取消映射它们?是否可以将页面标记为不再使用?如果这改变了场景,则此数据是只读的。如果我们mmap()直接使用呢?这会更好吗?

0 投票
9 回答
6334 浏览

language-agnostic - 在模拟的低内存、慢 CPU 环境中运行我的应用程序

我想以这种方式对我的应用程序进行压力测试,因为它似乎在一些非常旧的客户端机器上失败了。

起初我阅读了一些关于 QEmu 的内容并考虑了硬件仿真,但这似乎是一个漫长的过程。我问了superuser,但没有得到太多反馈(还)。

所以我转向你们......你们如何进行这种测试?

0 投票
1 回答
320 浏览

android - How block all applications in low memory scenario

I wrote code such that if phone internal memory becomes less than 10% of total internal memory then it'll show low memory dialog and it'll take user to managapplications activity to free some memory. but if user is not freeing also it's allowing user to fill the remaining internal memory. How can i block all the other applications till it satisfies the memory condition(>10% of total low memory).

Thanks in anticipation.