memory-leaks相关内容

如何检测内存泄漏在哪里?

我有一个大型网站,它似乎占用了所有正在分配的内存.该站点旁边的服务器上没有其他任何内容.在一周内,它会消耗掉 2 场演出并需要重新启动.目前这是使用 IIS 7 的 2008 32 位服务器.我们正在重新安装以使用 64 位并添加更多内存.如果能够追踪发生泄漏的位置,那就太好了. 那么跟踪内存泄漏的最佳做法是什么? 解决方案 在您的代码上运行分析器. 这里有两个不错的选择: ..
发布时间:2021-12-31 08:05:32 C#/.NET

为什么异常会导致 Node.js 中的资源泄漏?

如果您查看 Node.js 域文档 的开头,它指出: 根据 JavaScript 中 throw 工作原理的本质,几乎没有任何方法可以安全地“从上次中断的地方继续",而不会泄漏引用或创建其他类型的未定义脆弱状态. 再次在第一部分给出的代码示例中,它说: 虽然我们阻止了进程突然重启,但我们正在疯狂地泄漏资源 我想了解为什么会这样?什么资源泄露?他们建议您仅使用域来捕获错误并安 ..

引用计数智能指针的引用计数是如何工作的?

换句话说,实现如何跟踪计数? 是否有一个类似地图的对象可以被所有 shared_ptr 实例访问,其键是指针的地址,值是引用的数量?如果我必须实现一个 shared_ptr,这是我想到的第一个想法. 在这些引用计数智能指针的情况下,是否有可能发生内存泄漏?如果是这样,我该如何避免它们? 解决方案 我见过两种不同的非侵入式方法来解决这个问题: 智能指针分配一个小的内存块来包 ..

GCC 内存泄漏检测相当于 Microsoft crtdbg.h?

在 Visual Studio 中使用 Microsoft MSVC 编译器开发通用 C++ 库多年后,我们现在将其移植到 Linux/Mac OS X(为我们祈祷).我已经习惯并非常喜欢 MSVC 中简单的内存泄漏检测机制: #ifdef DEBUG#define _CRTDBG_MAP_ALLOC#define NEW new(_NORMAL_BLOCK, __FILE__, __LINE_ ..
发布时间:2021-12-31 08:05:04 C/C++开发

java 堆转储中那些奇怪的类名是什么意思?

我正在尝试使用 jmap 和 jhat.每次我这样做时,我都会看到特定对象类型的奇怪符号,例如字符串数组的 [S 和字符数组的 [C.我从来不记得什么是什么意思,而且很难用谷歌搜索这些东西. (EDIT:为了证明我的观点,事实证明 [S 是短数组,[C 是字符数组.) 有人愿意制作一个表格,列出所有不同的类名称及其含义吗?或者把我指向这样的表? 我特别想知道[Ljava.lang ..
发布时间:2021-12-31 08:04:54 Java开发

PermGen 空间错误 - Glassfish 服务器

我正在使用 Hibernate 和 glassfish Server 运行 Java Web 应用程序.我得到了 java.lang.OutOfMemoryError: PermGen space 在我多次部署后出现异常. 我在我的环境变量中尝试了 -XX:MaxPermSize=128M,但它不起作用. 解决方案 这是类加载器内存泄漏.每次重新部署应用程序时,都会为其创建一个 ..
发布时间:2021-12-31 08:04:45 Java开发

使用 Data URI 快速更新图像导致缓存、内存泄漏

我有一个网页,可以从服务器快速流式传输 JSON 并显示它的一部分,大约每秒 10 次.其中一部分是 base64 编码的 PNG 图像.我找到了几种不同的显示图像的方法,但所有这些方法都会导致无限制的内存使用.它在几分钟内从 50mb 上升到 2gb.发生在 Chrome、Safari 和 Firefox 上.IE没试过. 我首先通过查看 Activity Monitor.app 发现了内 ..
发布时间:2021-12-31 08:04:28 前端开发

如何查找哪个 PHP 脚本正在泄漏内存?

我的专用服务器有 32GB 内存,内存不断增加,我现在必须每天重新启动它.这让我失去了客户和金钱. 我很难找到内存泄漏的位置.我在网上能找到的只是人们说“使用 xdebug",但我找不到任何关于查找内存泄漏的 xdebug 教程.我试过在函数调用之前和之后打印 memory_get_usage 但这是正确的方法吗? 我有很多 php 脚本正在运行——有些来自访问者,有些来自 cron ..
发布时间:2021-12-31 08:04:15 PHP

由于您的代码,Python 中是否可能存在实际内存泄漏?

我没有代码示例,但我很好奇是否可以编写导致内存泄漏的 Python 代码. 解决方案 有可能,是的. 这取决于您所谈论的内存泄漏类型.在纯 python 代码中,不可能像在 C 中那样“忘记释放"内存,但可以将引用挂在某处.一些这样的例子: 一个未处理的回溯对象,即使函数不再运行,它也能保持整个堆栈帧处于活动状态 while game.running():尝试:key_pre ..
发布时间:2021-12-31 08:03:49 Python

这个对象生命周期扩展闭包是 C# 编译器错误吗?

我正在回答一个关于关闭可能性的问题(合法地)当我在 C# 编译器方面遇到一些非常 奇怪的代码生成时,延长对象生命周期(4.0,如果这很重要). 我能找到的最短的repro如下: 创建一个 lambda,在调用包含类型的 静态 方法时捕获本地. 将生成的委托引用分配给包含对象的实例字段. 结果:编译器创建一个引用创建 lambda 的对象的闭包对象,当它没有理由 - 委托的“内部 ..
发布时间:2021-12-31 08:03:41 C#/.NET

JavaScript 中的内存泄漏和闭包 - 何时以及为什么?

您经常在网上看到,使用闭包是 JavaScript 内存泄漏的一个巨大来源.大多数情况下,这些文章提到混合脚本代码和 DOM 事件,其中脚本指向 DOM,反之亦然. 我知道关闭可能是一个问题. 但是 Node.js 呢?在这里,我们自然没有 DOM - 因此不会像在浏览器中那样出现内存泄漏的副作用. 闭包还有哪些其他问题?任何人都可以详细说明或指向我一个很好的教程吗? 请注 ..
发布时间:2021-12-31 08:03:34 其他开发

取消部署 Tomcat Web 应用程序时如何防止文件锁定?

我在 tomcat 7 中使用管理器应用程序,我无法完全取消部署应用程序. 它说失败 - 无法删除 [F:\apache-tomcat-7.0.33\webapps\balaji].此文件继续存在可能会导致问题. 我在某处读到它是因为某种称为内存泄漏的现象,如果我们修复它,问题将得到解决. 谁能告诉我 tomcat 7 中的内存泄漏是什么,我们该如何解决?我正在使用 Window ..
发布时间:2021-12-31 08:03:24 服务器开发

iPhone SDK - 使用 performSelectorInBackground 泄漏内存

也许有人可以帮我解决这个奇怪的事情: 如果用户点击一个按钮,一个新的 UITableView 会被推送到导航控制器.这个新视图正在执行一些需要一些时间的数据库查询.因此我想在后台进行加载. 在不泄漏内存的情况下有效(但在一切完成之前冻结屏幕): WorkController *tmp=[[WorkController alloc] initWithStyle:UITableViewS ..
发布时间:2021-12-31 08:03:13 移动开发

加载viewcontroller后应用运行缓慢,然后卸载大约15-20次

使用:Xcode 4.6故事板弧模型 segue 到 SecondViewController 我有一个应用程序,它的主 ViewController 会在设备向右旋转时加载一个新的 veiwController.当应用程序启动时,一切正常.如果我旋转设备,然后返回卸载 secondview 控制器,大约 15-20 倍的应用程序非常缓慢.我已经缩小范围,它仅在加载第二个视图控制器时发生,并 ..
发布时间:2021-12-31 08:03:03 移动开发

使用 STL 容器的 C++ 内存泄漏

以下代码导致内存泄漏(使用 Visual Studio): #define _CRTDBG_MAP_ALLOC#include #include #include #include 结构侦听器{};结构体{std::vector听众;};int main(void){主题主题;_CrtDumpMemoryLeaks();返回 1;} 我认为这是因为在实例化 Subject 类时 STL 向量容 ..
发布时间:2021-12-31 08:02:55 C/C++开发