问题标签 [out-of-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 投票
1 回答
444 浏览

c# - 远程方法调用期间的 OutOfMemoryException

在进行远程方法调用时,我得到了 OutOfMemoryException。

“RemoteEntity.SetLocalStore(数据集);”

传递的值是数据集。

注意数据集大小为 38mb

环境 c# VS2008

谢谢

代码 :

0 投票
4 回答
12684 浏览

c# - 为什么在执行 ASP .NET Excel 互操作时出现内存不足错误?

有效的..我将处理代码移至 finally 块,现在每次都失败。

我有一个包含 4 条记录、6 列长的测试电子表格。这是我用来引入它的代码。这是 IIS 5(我的电脑)和 IIS 6(Web 服务器)上的 ASP .Net 3.5。

它在捕获前的线上爆炸:“values = (object[,])range.Value2;” 出现以下错误:

11/2/2009 8:47:43 AM :: Not enough storage is available to complete this operation. (Exception from HRESULT: 0x8007000E (E_OUTOFMEMORY))

有任何想法吗?建议?我从 codeproject 获得了大部分代码,所以我不知道这是否是使用 Excel 的正确方法。感谢您的任何帮助,您可以提供。

这是我的代码:

0 投票
4 回答
22009 浏览

python - 如何在 Python 中调试 MemoryError?跟踪内存使用的工具?

我有一个 Python 程序,当我给它一个大文件时,它会因 MemoryError 而死。有什么工具可以用来找出内存在使用吗?

该程序在较小的输入文件上运行良好。该程序显然需要一些可扩展性改进;我只是想弄清楚在哪里。正如一位智者所说,“在优化之前先进行基准测试”。

(只是为了防止不可避免的“添加更多 RAM”答案:这是在具有 4GB RAM 的 32 位 WinXP 机器上运行的,因此 Python 可以访问 2GB 的可用内存。增加更多内存在技术上是不可能的。用 64 重新安装我的 PC -bit Windows 不实用。)

编辑:糟糕,这是推荐使用哪个 Python 内存分析器的副本?

0 投票
1 回答
1762 浏览

asp.net - Linq to Entities 和 SQL Server 2008 FileStream

后端:启用 FileStream 的 SQL Server 2008 数据库

数据访问: Linq to Entity

我有成千上万的 pdf 当前驻留在文件服务器上。我想将这些 pdf 从文件服务器中移出并放入 SQL Server 2008 数据库中,以便更轻松地管理它们。

作为概念证明(即——确保 SQL Server 2008 中的新 FileStream 功能是我正在寻找的),我编写了一个小应用程序,该应用程序将通过实体框架读取和写入这些 pdf 到启用 FileStream 的数据库。

该应用程序非常简单;这是代码:

我在上面注释了发生错误的代码行。确切的错误是“System.outofmemoryexception”,这让我毫不怀疑文件大小是导致问题的原因。上面的代码确实适用于较小的 pdf。我不知道文件大小的确切限制在哪里,但我最大的 pdf 文件超过 350 兆字节,并且出现错误。

任何帮助将不胜感激。谢谢!

0 投票
9 回答
95694 浏览

java - 是否可以在java中捕获内存不足异常?

我正在开发一个需要大量内存的程序,并且我想在发生内存不足异常时进行捕捉。我听说这是不可能的,但好奇这方面是否有任何发展。

0 投票
2 回答
9065 浏览

java - 使用 Commons FileUpload 的 DiskFileItem 上传大文件时如何避免 OutOfMemoryErrors?

使用 Commons FileUpload 1.2.1 将大型 (>300MB) 文件上传到 servlet 时,出现 OutOfMemoryErrors。这似乎很奇怪,因为使用 DiskFileItem 的全部目的是防止(可能很大)文件驻留在内存中。我使用的是 10KB 的默认大小阈值,所以这就是应该加载到堆中的所有内容,对吧?这是部分堆栈跟踪:

为什么会这样?我缺少一些配置吗?除了增加我的堆大小之外,还有什么提示/技巧可以避免这种情况?

我真的不应该增加我的堆,因为理论上应该从这个操作加载到内存中的最多是 10KB 多一点。另外,我的堆最大值(-Xmx)已经设置为 1GB,应该足够了。

0 投票
4 回答
991 浏览

.net - VB6 应用程序调用 .NET DLL OutOfMemory 异常

我们有一个调用 .NET DLL 的 VB6 应用程序。有时,在 VB6 应用程序运行了很长时间并多次调用 .NET 代码之后,.NET 方面会抛出 OutOfMemory 异常,即使机器上有足够的可用内存。VB6 内存空间也没有接近极限。

.NET 端是否保留单独的内存池?或者它是 VB6 应用程序的内存池的一部分?

如果是分开的,有没有办法看它有多大?我的任务管理器中唯一的大内存项目是 SQL Server 和 VB6 应用程序(两者都是预期的)。

这种情况不会经常发生,但一旦发生,就很难确定系统为什么不分配更多内存。

0 投票
2 回答
1599 浏览

python - 使用 Psycopg2 在 Python 和 Postgresql 之间保持连续连接的最佳/最佳实践

我正在使用 Postgresql 8.3 在 Python 中编写一个应用程序,该应用程序在本地网络上的多台机器上运行。

所有机器

1)从数据库服务器获取大量数据(假设数据库在 2 秒内从一台机器获取 100 个不同的查询),大约有 10 或 11 台机器在做这件事。

2)处理数据后,机器必须更新某些表(每台机器每 1.5 秒大约 3 或 4 个更新/插入查询)。

我注意到的是,由于服务器异常中止进程或冻结服务器机器(需要硬重置),数据库有时会出现故障。

顺便说一句,所有机器始终保持与数据库的恒定连接,即一旦使用 Psycopg2(在 Python 中)建立连接,它就会保持活动状态,直到处理完成(可能持续数小时)。

处理应用程序中大量连接的最佳/最佳方式是什么,是否应该在每次查询后销毁它们?

其次我应该增加 max_connections 吗?

非常感谢您对此事的任何建议。

0 投票
4 回答
3132 浏览

hibernate - 休眠:打印日志消息时出现 OutOfMemoryError 持久 Blob

我有一个休眠实体:

我的 VM 配置为最大堆大小为 512 MB。当我尝试持久化具有 75 MB 大对象的对象时,我收到 OutOfMemoryError。

堆栈跟踪中的方法名称(StringBuilder、ByteArrayBlobType.toLoggableString、pretty.Printer.toString)表明 hibernate 正在尝试写入包含我的对象的非常大的日志消息。

我对为什么休眠使用这么多内存是正确的吗?解决此问题的最简单方法是什么?

0 投票
2 回答
482 浏览

c# - LinqToSql InsertOnSubmit 内存泄漏?

我试图在我的 C# 应用程序中隔离“内存泄漏”的来源。image此应用程序使用SQL Server 中的列类型将大量可能较大的文件复制到数据库中的记录中。我正在使用 aLinqToSql和关联的对象进行所有数据库访问。

主循环遍历文件列表并插入。在删除了很多样板和错误处理之后,它看起来像这样:

在整个输入上运行这个程序会导致最终的OutOfMemoryException. CLR Profiler 显示 99% 的堆由byte[]与文件大小相对应的大对象组成。

如果我评论 A 行和 B 行,这个泄漏就会消失。如果我只取消注释 A 行,泄漏就会回来。我不明白这是怎么可能的,因为dc循环的每次迭代都是如此。

有没有人遇到过这个?我怀疑直接调用存储过程或进行插入将避免这种泄漏,但我想在尝试其他方法之前了解这一点。到底是怎么回事?

更新

包括GC.Collect();在 (B) 行之后似乎对任何情况都没有重大变化。这并不让我感到惊讶,因为 CLR Profiler 显示了大量的 GC 事件而没有明确地诱导它们。