Ich stelle fest, dass ähnliche Fragen zu diesem Thema hier auf SO gefragt wurden, aber lassen Sie mich genau beschreiben, was ich tun muss:Die beste Möglichkeit, die Speichernutzung in einer Java-Anwendung zu profilieren?
Ich habe eine Reihe von Tests, die eine Befehlszeile Java-Anwendung ausführen und ich möchte Hinzufügen von Speicherprofilen zu ihnen. Eine Option, die ich sehe, wäre, Code (möglicherweise unter Verwendung von Tools/Bibliotheken von Drittanbietern) zu meiner Anwendung hinzuzufügen, die einen Speicher-Snapshot bereitstellen würde. Eine andere Möglichkeit wäre, ein Drittanbieter-Tool zu verwenden, das meine Anwendung und die JVM für mich verwaltet/instrumentiert (und im Idealfall nicht erfordert, dass ich meinen Code ändere). Ich denke an etwas wie Valgrind, aber für Java. Wenn möglich auch Open Source.
Was ich wirklich tun möchte, ist die Speichertests einzurichten, so dass meine Speicherauslastung in regelmäßigen Abständen überwacht wird, sagen wir jede Sekunde, und in eine Textdatei ausgegeben wird. Auf diese Weise könnte ich sehen, ob die Speichernutzung im Laufe der Zeit oszilliert/zunimmt/abnimmt. Ich bin auch in der Lage, die Max- und Min-Peaks zu berechnen.
Hat jemand hier so etwas getan?
Vielen Dank im Voraus.
Der Netbeans-Profiler wurde in den VisualVM-Analyzer mit Java 6 u10 eingefügt. Es ist sehr schön! –