120得票14回答
当仍有大量可用内存时,抛出“System.OutOfMemoryException”异常。

以下是我的代码:int size = 100000000; double sizeInMegabytes = (size * 8.0) / 1024.0 / 1024.0; //762 mb double[] randomNumbers = new double[size]; 异常: 引发了类...

14得票2回答
我需要在每个“foreach”迭代中释放COM对象吗?

这里是(可能的)问题: 我创建了一个COM对象,然后使用“foreach”循环遍历它返回的集合中的每个元素。我需要释放我迭代的集合中的每个单独元素吗?(请参见下面的代码。)如果需要,我无法想到一种有效的方法在“finally”语句中释放它,以防在操作该项时发生错误。 有什么建议吗? pr...

8得票3回答
确定C++中new运算符分配的内存大小。

如何确定C++ new运算符分配的内存大小? 在C中,malloc语法如下: void *malloc(size_t size); 在这里,我们知道正在分配的大小。 但是在C++中,当我们进行内存分配时,我们如何确定分配的大小。我想知道new如何确定需要分配的大小。 foo *pF...

7得票4回答
数据集级联和内存消耗

我有一个应用程序,使用DataSet.WriteXML导出数据和DataSet.ReadXML导入数据。在导入过程中,根据应用程序逻辑需要更改某些主键。 当记录数超过500K时,成功写入和读取XML。一旦更改了主键,它会等待一段时间并抛出OutOfMemory异常。我认为原因是必须进行大量的...

7得票2回答
如何在Delphi 6包中使用FastMM4?

我一直在我的Delphi 6 Pro应用程序中顺利使用FastMM4版本4.92。现在,我想在我创建的一个包(BPL)中使用它。我尝试将这些单元放在Contains部分,然后将它们移动到列表的顶部,但我仍然会收到来自FastMM4的错误提示,指出它不是第一个要初始化的单元。为了解决这个问题,我...

8得票3回答
realloc但只有前几个字节有意义

假设我已经使用ptr = malloc(old_size);来分配一个有old_size字节的内存块。只有前header_size字节是有意义的。现在我将增加尺寸到new_size。 new_size大于old_size,而old_size大于header_size。 之前: /- - ...

8得票5回答
内存池相关问题

我需要澄清关于内存池的概念和实现方面的问题。根据维基百科上的 内存池,它说: 所谓固定大小块分配 ... ,由于变量块大小导致的碎片化,这些实现可能无法在实时系统中使用,因为会影响性能。 “变量块大小如何导致碎片化”是如何发生的呢?如何通过固定大小的分配来解决这个问题?对我来说,这篇维基百...

18得票6回答
在WPF中,Children.Remove或Children.Clear不能释放对象。

更新:我在另一台干净安装的机器上尝试了这个方法。我无法在那台机器上重现这个问题。如果我找到导致此问题的(VSStudio)组件,我会告诉你。 我从代码后台创建了一些UI元素,并期望垃圾收集清除这些内容。然而,对象并没有在我预期的时间被释放。我希望它们在RemoveAt(0)时被释放,但它们只...

9得票2回答
安卓应用程序占用大量内存

在开发我的Android应用时,我最近查看了任务管理器,以查看我的应用程序正在使用多少内存。 目前,我的应用程序有两个由AdMob服务执行的广告横幅,然后是Google地图的界面片段。除此之外,我还有一个菜单,其中我使用容器在Java代码中添加视图。我更喜欢这种方法而不是列表视图,因为它更轻...

48得票10回答
.NET 字符串类的替代方案

由于我正在规划的应用程序将在内存中保存大量数据,因此我希望有一种“紧凑”的字符串类,至少应该包含字符串格式不大于零终止ASCII版本的字符串。 你知道有没有这样的字符串类实现 - 它应该具有一些类似于原始字符串类的实用函数。 编辑: 我需要对字符串进行排序并能够扫描它们,这只是我将使用的...