Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JProfiler:垃圾收集器收集对象之后。若堆上有任何活动对象,是否存在内存泄漏?_Java_Memory Management_Memory Leaks_Profiling_Jprofiler - Fatal编程技术网

Java JProfiler:垃圾收集器收集对象之后。若堆上有任何活动对象,是否存在内存泄漏?

Java JProfiler:垃圾收集器收集对象之后。若堆上有任何活动对象,是否存在内存泄漏?,java,memory-management,memory-leaks,profiling,jprofiler,Java,Memory Management,Memory Leaks,Profiling,Jprofiler,我正在使用JProfiler对我的应用程序进行评测。我已经注意到,当我运行垃圾收集器时,所有标记的录制对象都变为绿色,一段时间后,它在创建和销毁对象方面再次面临一些差异。 顺便问一下,我的应用程序此时仍在运行,我的应用程序是否面临内存泄漏问题,或者这是正常现象。 有一些快照可以帮助您了解情况 上面是我运行垃圾收集器时的快照… 但一段时间后,这些条部分变为绿色和红色…通常,如果某个对象(例如char[])占用的大小在GC期间持续增长,则可以说内存正在泄漏 在GC之后,对于某些类型的对象,如果您再

我正在使用JProfiler对我的应用程序进行评测。我已经注意到,当我运行垃圾收集器时,所有标记的录制对象都变为绿色,一段时间后,它在创建和销毁对象方面再次面临一些差异。
顺便问一下,我的应用程序此时仍在运行,我的应用程序是否面临内存泄漏问题,或者这是正常现象。
有一些快照可以帮助您了解情况

上面是我运行垃圾收集器时的快照…


但一段时间后,这些条部分变为绿色和红色…

通常,如果某个对象(例如char[])占用的大小在GC期间持续增长,则可以说内存正在泄漏

在GC之后,对于某些类型的对象,如果您再次看到“红色”,通常是可以的。我假设您的应用程序正在做一些工作并生成垃圾。因此,这本身不是一个问题。然而,如果规模持续增长,这可能是一个问题

一个好的策略是在GC前后记录给定对象的分配大小,比如char[],并查看收集了多少对象。在一段时间内重复此练习。如果尺寸没有大幅增长,你应该没事


重要的一点是,确保负载配置文件(请求数、后台作业等)相同。否则,您的内存分析结果将无法进行一一比较。

您应该查看完整GC后使用的内存量之间的差异。