代码之家  ›  专栏  ›  技术社区  ›  T .

Java 3D内存泄漏

  •  2
  • T .  · 技术社区  · 14 年前

    此设置的原因是,每个3500开关必须能够完全隐藏或其两个子开关之一可见。

    当我试图修改开关组中两个shape3d的几何图形时,问题就出现了。我尝试了以下几点:

    • 当需要更改几何体时,我拆下BranchGroup并创建一个新的,带有更新的几何体来替换它。

    • 使几何图形可编辑。 当需要修改几何体时,我直接编辑它。 泄漏大量内存。同上。

    • 重新创建整个场景图。

    我忍不住觉得Java3D内存管理有一些基本的东西我缺少,这是我所有尝试的共同点。

    更改几何图形的速度不是问题,因为这是一种罕见的情况。然而,内存问题是严重的。

    2 回复  |  直到 14 年前
        1
  •  2
  •   Community Egal    7 年前

    使用在操作系统级别监视内存的工具来推断Java虚拟机中的内存泄漏通常是一种误导。JVM对何时有效地声明和回收内存有自己的想法。

    如果您能解释您是如何观察到内存泄漏的,以及为什么它是一个严重的问题,那么回答您的问题可能会更容易。

    • 你是如何衡量内存使用情况的?
    • 内存问题是否导致java.lang.OutOfMemoryError?

    https://stackoverflow.com/questions/1716597/java-memory-leak-detection-tools

        2
  •  1
  •   Thorbjørn Ravn Andersen    14 年前

    使用visualvm(在JDK中作为jvisualvm二进制文件提供)连接到您的程序,并使用探查器了解内存的去向。