- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
今天我注意到我的程序慢慢地消耗内存。我检查了Java VisualIVM以尝试了解更多信息。我对此很陌生。我使用 Java8 和 Swing 进行编码来处理游戏。
请注意,除了渲染对象之外,不应发生任何事情。
没有新实例或任何东西。
游戏循环看起来类似于
while (running)
try render all drawables at optimal fps
try update all entities at optimal rate
sleep if there is time over
根据我在 20 分钟内发现的情况,发生了以下情况。
如果我对游戏循环中除 while (running {}
部分除外) 中的所有内容进行注释,我得到的泄漏会更少,但它们仍然会发生。
这是正常现象还是我应该深入挖掘?如果我需要更深入地挖掘,有人可以指出我要照顾什么的方向。
现在 25 分钟后,RAM 已达到 102 MB。这意味着泄漏越来越小。
提醒一下,我不太擅长这个。我第一次尝试以这种方式调试我的项目。请记住这一点。
更新
大约 40 分钟后,RAM 使用量稳定在 101 到 102 MB。现在已经有 15 分钟没有超过这个值了。它有点上下。
堆大小越来越小。 CPU 使用率稳定。
最佳答案
简短回答:没有泄漏。
说明
使用这些问题作为引用。
Simple Class - Is it a Memory Leak?
Tracking down a memory leak / garbage-collection issue in Java
Creating a memory leak with Java
还有这篇文章。
http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/gc01/index.html
正如我在问题中提到的。我对此很陌生。触发我的是,我检查了 Windows 任务管理器,发现我的应用程序的内存使用量有所增加。所以我决定深入挖掘。我学到了一些东西。
我大大低估了 Java 垃圾收集。如果这是你的意图,那么导致内存泄漏是很困惑的。然而,当涉及线程时,可能会出现问题。当我在项目中使用线程时,这引起了我的注意。
Windows 提供的工具较差,我建议使用外部工具。我使用了 Java VisuaIVM。在这个工具中,我发现游戏的前 2 分钟会加载大量的类。还有 5 个。首先创建的一些是 JVM 生成的 String
引用。
“Thread.sleep 可能会在幕后分配对象。” ——我发现它有这些作用。一共5个连。这解释了我最初的“5 个类在运行时加载了一段时间。”。我目前还不知道他们在做什么。
大约 10 - 15 MB 来 self 所做的分析。我希望我不是这样的菜鸟。
所以我再次没有发现泄漏。
关于java - 内存泄漏或者是预料之中的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27424315/
IntentReceiver 正在泄漏 由于 onDetachedFromWindow 在某些情况下未被调用。 @Override protected void onDetachedFromWind
好吧,我很难追踪这个内存泄漏。运行此脚本时,我没有看到任何内存泄漏,但我的 objectalloc 正在攀升。 Instruments 指向 CGBitmapContextCreateImage >
我编写了一个测试代码来检查如何使用 Instrument(Leaks)。我创建了一个单一 View 应用程序,单击按钮后我加载了一个像这样的新 View ... - (IBAction)btn_clk
我正在使用这个简单的代码并观察单调增加的内存使用量。我正在使用这个小模块将内容转储到磁盘。我观察到它发生在 unicode 字符串上而不是整数上,我做错了什么吗? 当我这样做时: >>> from u
我有以下泄漏的代码。 Instruments 表示,泄漏的是 rssParser 对象。我“刷新”了 XML 提要,它运行了该 block 并且发生了泄漏...... 文件.h @interface
我在我编写的以下代码片段中发现了内存泄漏 NSFileManager *fileManager=[[NSFileManager alloc] init]; fileList=[[fileManager
因此,我正在开发HTML5 / javascript rts游戏。观察一直有几种声音在播放。因此,对我来说,是一段时间后声音听起来像是“崩溃”,并且此浏览器选项卡上的所有声音都停止了工作。我只能通过重
下面是我正在使用的一段代码及其输出。 my $handle; my $enterCount = Devel::Leak::NoteSV($handle); print "$date entry $en
在这篇关于 go-routines 泄漏的帖子之后,https://www.ardanlabs.com/blog/2018/11/goroutine-leaks-the-forgotten-sende
我想知道为什么在执行 ./a.out 后随机得到以下结果。有什么想法我做错了吗?谢谢 http://img710.imageshack.us/img710/8708/trasht.png 最佳答案 正
我正在 Swift 中开发一个应用程序,在呈现捕获我放在一起的二维码的自定义 ViewController 后,我注意到出现了巨大的内存跳跃。 该代码本质上基于以下示例:http://www.appc
下面是我的 javascript 代码片段。它没有按预期运行,请帮我解决这个问题。 function getCurrentLocation() { console.log("insi
我们在生产环境中部署了 3 个代理 Kafka 0.10.1.0。有些应用程序嵌入了 Kafka Producer,它们将应用程序日志发送到某个主题。该主题有 10 个分区,复制因子为 3。 我们观察
我正在使用仪器来检测一些泄漏,但有一些泄漏我无法解决; NSMutableString *textedetails = [[NSMutableString alloc] init];
如果我使用性能工具测试我的代码 - 泄漏,它没有检测到任何泄漏。这是否意味着代码没有泄漏任何内存? 我有一个越狱的 iPhone,我可以监控可用内存。如果有人知道,那就是 SBSettings。我测试
我在从 AddressBook 中获取图像时遇到了很大的问题,下面我粘贴了我的代码。此 imageData 从未被释放,在我的 Allocations Instruments 上它看起来总是在内存中它
- (NSMutableArray *)getArrayValue:(NSArray *)array{ NSMutableArray *valueArray = [NSMutableArra
Instruments 工具说这是一个泄漏,有什么想法吗? 我在 for 循环结束时释放变量对象 在上述方法的开头,这就是我设置变量对象的方式,即自动释放; NSMutableArray *varia
我正在跟踪我的 iOS 应用程序的内存泄漏,我有一个奇怪的泄漏导致我的应用程序崩溃......负责的框架是:CGImageMergeXMPPropsWhithLegacyProps。在某些时候,我的应
我正在尝试使用 NSOperationQueue 在后台线程中执行一个方法,如下所示: NSOperationQueue *queue = [NSOperationQueue new]; NS
我是一名优秀的程序员,十分优秀!