heap-fragmentation

    1热度

    1回答

    我正在处理垃圾回收的基本知识以及每种方法的不同算法(加上pro的con的等..)。我试图确定最佳垃圾回收算法用于不同的场景。 如:堆上的东西都一样的大小,一切都很小,很短的寿命,一切都很大,寿命较长。 - 如果一切都是相同的大小堆碎片不是问题。另外我也不必担心压实。所以也许参考计数? -small obj w/short lifespan? -large obj w/long lifespan?

    3热度

    4回答

    堆碎片可能导致服务器应用程序预计会持续运行数月,以至于突然发生故障,认为它内存不足。 我们假设我已经尽我所能在我的VC++服务器应用程序中尽量减少运行时堆碎片,但它仍会累积并导致问题。例如,我可以自动重新启动应用程序每个月或每五十万个请求处理 - 安全地停止并安全地重新启动一个新的堆。我还能做什么解决方法堆碎片?

    8热度

    1回答

    我需要从GCC为Linux编译我的C程序中回答一个基本问题:如何处理堆的多少是目前正在使用(通过malloc分配)和多少驻留如果免费的堆块。标准库的GNU实现有mallinfo函数,它能够准确报告我需要什么,但它只能用于32位配置,而且AFAIK没有64位等效的功能(顺便说一句,任何人都知道为什么?)。 我用GCC在Linux上,所以我需要这样的Linux版本。但是我认为这个堆对系统是不透明的,所

    10热度

    1回答

    在我的课堂上,我们有一个任务,并的问题之一规定:用C 记忆碎片:设计,实施和运行C程序,做的以下内容:它为每个大小为500000个元素的3m数组序列分配内存;那么它将取消分配所有偶数数组,并分配每个大小为700000个元素的m个数组序列。测量您的程序在分配第一个序列和第二个序列时需要的时间量。选择m,以便用尽程序中可用的所有主内存。解释你的计时 我对此的实现如下: #include <iostre

    0热度

    1回答

    我有一个程序可以分析150,000个文件。 Valgrind报告没有内存泄漏,但程序随着时间的推移而减慢。 一些问题与经常使用std :: string和mktime需要太多时间有关。 (见C++ slows over time reading 70,000 files) 但随着时间的推移,它仍然会变慢。 Lotharyx建议容器使用正在导致堆碎片。 我阅读了各种STL容器的利弊流程图,但我并没有

    9热度

    2回答

    我想了解堆碎片如何工作。以下输出告诉我什么? 这堆是否过分分散? 我有243010个“自由对象”,总数为53304764个字节。那些曾经包含对象但现在已经收集到garabage的堆中的那些“自由对象”空间? 如何强制碎片堆清理? !dumpheap -type Free -stat total 243233 objects Statistics: MT Count TotalSiz

    3热度

    2回答

    除了mark-and-sweep,.Net和Java的垃圾收集器也都运行压缩阶段来减少内存碎片。我无法在Flash 9垃圾收集器的压缩/碎片整理阶段找到任何文档 - Flash是否没有任何压缩阶段?

    12热度

    1回答

    如何监视或可视化delphi应用程序的内存碎片?

    30热度

    5回答

    就像在标题中一样,连续的内存块是什么?

    2热度

    1回答

    我有一个问题,一直困扰着我上周。 在Windows调试存在!heap -s命令输出该虚拟存储器的堆状态,并使用下列公式计算所述外部碎片: External fragmentation = 1 - (larget free block/total free size) 是否有在Linux的相似方法,其输出以计算所需要的那些统计效果如何? 长篇大论现在: 我有一个C应用程序,它使用malloc和f