Questions tagged «memory»

使用此标签进行内存管理或编程问题。有关内存硬件问题或通用软件中的错误的问题,请访问https://superuser.com或https://serverfault.com(如果这与企业级硬件或软件有关)。

4
为什么这个吃记忆的人真的不吃记忆?
我想创建一个程序来模拟Unix服务器上的内存不足(OOM)情况。我创建了这个超级简单的内存消耗者: #include <stdio.h> #include <stdlib.h> unsigned long long memory_to_eat = 1024 * 50000; size_t eaten_memory = 0; void *memory = NULL; int eat_kilobyte() { memory = realloc(memory, (eaten_memory * 1024) + 1024); if (memory == NULL) { // realloc failed here - we probably can't allocate more memory for whatever …

7
如何清除ipython中的变量?
有时,我会在同一ipython会话中重新运行脚本,但在未清除变量的情况下,我会感到很惊讶。如何清除所有变量?每次我调用魔术命令%run时是否有可能强制执行此操作? 谢谢
146 python  memory  ipython 

3
应用程序可以使用的最大RAM数量是多少?
我对这个与Android操作系统的内存管理有关的问题非常好奇,因此我希望就该主题提供一个非常详细的答案。 我想知道的是: Android应用程序(不是系统应用程序)可以使用的最大内存量(兆字节 / 占总RAM的百分比)是多少? Android版本之间有什么区别吗? 关于设备制造商有什么区别吗? 最重要的是: 什么被视为/ 这是什么取决于当它涉及到系统中确定多少内存的应用程序可以在运行时使用(假设每个应用程序的内存最大是不是一个静态的数字)? 到目前为止(截至2013年)我所听到的: 早期的Android设备的每个应用上限为16MB 后来这个上限增加到24MB或32MB 是什么让我非常好奇: 这两个限制都非常低。 我刚刚下载了Android任务管理器,以检查设备的RAM。我注意到的是,有些应用程序使用大约40-50 MB的RAM,这比上面提到的最大RAM使用量(例如32 MB)要明显得多。那么Android如何确定一个应用可以使用多少RAM?应用程序怎么可能超过该限制? 此外,我注意到当使用大约30-40 MB时,我的一些应用程序崩溃了(被系统杀死了?),并带有OutOfMemoryException。另一方面,一段时间后(可能是由于内存泄漏),我的手机上使用的应用程序使用的内存为100 MB以上,并且不会崩溃或消失。因此,在确定可以保留多少RAM时,显然还取决于应用程序本身。这怎么可能?(我使用具有768 MB RAM的HTC One S进行了测试) 免责声明:我不以任何方式与Android Task Manager应用关联。



11
如何找到Java内存泄漏
您如何找到Java中的内存泄漏(例如,使用JHat)?我试图将堆转储加载到JHat中,以进行基本了解。但是,我不明白我应该如何找到根引用(ref)或任何被称为根引用的东西。基本上,我可以说哈希表条目有几百兆字节([java.util.HashMap $ Entry或类似的东西),但是地图到处都是……使用某种方法可以搜索大型地图,还是找到大对象树的一般根? [编辑]好的,到目前为止,我已经阅读了答案,但是我们只能说我是个贱人(这意味着我对学习如何使用JHat而不是为JProfiler付费更感兴趣)。另外,由于JHat是JDK的一部分,因此始终可用。除非当然不能使用JHat,否则只能使用蛮力,但是我不敢相信这种情况。 另外,我认为我将无法进行实际修改(添加所有地图尺寸的记录)并运行足够长的时间,以至于我无法注意到泄漏。

5
stringstream,string和char *转换混乱
我的问题可以归结为,从stringstream.str().c_str()实时内存返回的字符串在哪里,为什么不能将其分配给const char*? 此代码示例将比我更好地解释它 #include <string> #include <sstream> #include <iostream> using namespace std; int main() { stringstream ss("this is a string\n"); string str(ss.str()); const char* cstr1 = str.c_str(); const char* cstr2 = ss.str().c_str(); cout << cstr1 // Prints correctly << cstr2; // ERROR, prints out garbage system("PAUSE"); return 0; } stringstream.str().c_str()可以分配给这个假设的假设const …

2
Redis缓存与直接使用内存
我还没有使用过Redis,但是我听说过它,并打算尝试将其作为缓存存储。 我听说Redis使用内存作为缓存存储数据库,那么如果我使用变量作为对象或字典数据类型来存储数据有什么区别?喜欢: var cache = { key: { }, key: { } ... } Redis有什么优势?
141 caching  memory  redis 

8
数组,堆和堆栈以及值类型
int[] myIntegers; myIntegers = new int[100]; 在上面的代码中,是否是new int [100]在堆上生成数组?根据我通过c#进行的CLR阅读,答案是肯定的。但是我不明白的是,数组内部的实际int发生了什么。因为它们是值类型,所以我想必须将它们装箱,例如,我可以将myIntegers传递给程序的其他部分,如果一直将它们留在程序中,则会使堆栈混乱。还是我错了?我猜想它们会被装箱,并且只要数组存在就可以在堆中生存。
134 c#  arrays  memory  stack  heap 

12
是什么导致PHP中“无法为池分配内存”?
我偶尔会遇到服务器的内存分配限制,尤其是对于像Wordpress这样a肿的应用程序,但是却从未遇到过“无法为池分配内存”和跟踪任何信息的麻烦。 有人知道这意味着什么吗?我尝试增加memory_limit失败。我也没有对该应用程序进行任何重大更改。有一天没有问题,第二天我遇到了这个错误。
133 php  caching  memory  apc 


29
避免C ++中内存泄漏的一般准则
从目前的情况来看,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 有什么常规提示可确保我不会泄漏C ++程序中的内存?我如何确定谁应该释放已经动态分配的内存?

9
什么时候以及为什么编译器会在malloc / free / new / delete上将内存初始化为0xCD,0xDD等?
我知道编译器有时会使用诸如0xCD和的某些模式来初始化内存0xDD。我想知道的是何时以及为什么发生这种情况。 什么时候 这特定于所使用的编译器吗? 做malloc/new与free/delete工作以同样的方式对本? 它是平台特定的吗? 它会在其他操作系统(例如Linux或)上发生VxWorks吗? 为什么 我的理解是,这仅在Win32调试配置中发生,它用于检测内存溢出并帮助编译器捕获异常。 您能提供一些有关初始化有用的实际例子吗? 我记得读过一些东西(也许在代码完成2中),说在分配内存时将内存初始化为已知模式是很好的,某些模式会触发中断,Win32从而导致调试器中显示异常。 这有多便携?

12
如何设置Apache Spark执行器内存
如何增加可用于Apache Spark执行器节点的内存? 我有一个2 GB的文件,适合加载到Apache Spark。我目前在1台机器上运行apache spark,因此驱动程序和执行程序在同一台机器上。本机具有8 GB的内存。 设置要缓存在内存中的文件后,当我尝试计算文件的行数时,出现以下错误: 2014-10-25 22:25:12 WARN CacheManager:71 - Not enough space to cache partition rdd_1_1 in memory! Free memory is 278099801 bytes. 我看了看文档,这里并设置spark.executor.memory到4g在$SPARK_HOME/conf/spark-defaults.conf UI显示该变量在Spark环境中设置。你可以在这里找到截图 但是,当我转到“ 执行器”选项卡时,单个执行器的内存限制仍然设置为265.4 MB。我也仍然遇到相同的错误。 我尝试了这里提到的各种方法,但是仍然出现错误,并且不清楚应该在哪里更改设置。 我正在从spark-shell交互式运行我的代码

14
了解可可和Objective-C的参考计数
我刚刚开始研究Objective-C和Cocoa,以期使用iPhone SDK。我对C malloc和free概念很满意,但是Cocoa的引用计数方案使我感到困惑。有人告诉我它非常优雅,但是我还没有结束。 怎么办release,retain和autorelease工作有什么关于他们使用的约定? (或者失败了,您读了什么书,对您有所帮助?)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.