问题标签 [jprofiler]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
intellij-idea - 我需要做什么才能在我的代码中使用 com.jprofiler.agent.Controller?
各位能否告诉我为了在我的代码中使用com.jprofiler.agent.Controller我需要做什么?
我有 GWT/GAE 应用程序,我在 IntelliJ IDEA 11 的调试器下运行。我有 JProfiler 7.0.1。
我用谷歌搜索了一下,似乎我需要将它传递"-agentpath:C:\Program Files (x86)\jprofiler7\bin\windows\jprofilerti.dll,config=C:\Program Files (x86)\jprofiler7\api\samples\common\config.xml"
"-Xbootclasspath/a:S:\Program Files (x86)\jprofiler7\bin\agent.jar"
给 JVM,但它似乎不起作用。
jprofiler - JProfiler 7.0.1 反射导致 IllegalAccessException
我在我的 Tomcat webapp 中使用 VMware jar 来收集 VM 信息。从 IDEA 10.5 内部启动 JProfiler 时,一切都运行良好,直到我调用 VMware jar,然后我得到一个IllegalAccessException
.
有没有办法阻止 JProfiler 查看 jar?我尝试了一个排除过滤器,com.vmware.vim25
但没有效果。
这是堆栈跟踪:
[剪辑]
java - 在 JProfiler 的监视器堆栈跟踪中显示行号
我正在使用 JProfiler 来调试一些锁争用问题。我可以在监视器历史记录中看到有问题的阻塞锁使用情况,并且可以看到等待线程和拥有线程的过滤堆栈跟踪。但是,堆栈跟踪不显示任何行信息。有没有办法获得这些回溯?
jprofiler - JVM退出后如何停止“线程历史”(在“线程视图”中)?
线程视图中的线程历史继续运行,即使 JVM 退出并且仅由 JProfiler 保持活动状态(使用Keep VM alive)。通过这种行为,我在 JVM 运行时看到了很多有用的数据,之后看到了越来越多的无用数据(在我的例子中,所有线程都在等待)。
我尝试使用带有停止记录操作的触发器JVM 退出,但这不会停止Thread History。
触发器有效,我使用打印消息操作进行了验证。
谢谢
java - jProfiler 找不到 JVM
我已经在我的生产服务器上启动了 jprofiler 并且在进行了一些分析之后我已经杀死了它(kill -9 )。
现在我试图重新启动它并只收到“未找到未配置的 JVM”。消息,但是 jps 命令说我的应用程序正在运行(我可以看到它实际上是由我自己运行的)。
可能 jprofiler 会在某个文件中存储有关其当前配置的 jvm 的信息,并且 kill 命令阻止它更新此文件。那么如何手动清理呢?
ps 我尝试删除然后再次解压缩 jprofile,仍然无法正常工作。
java - 性能测试与分析
我正在处理许多中等复杂度的 Java/Jsp 应用程序,并且想知道使用 Jmeter 进行性能测试而不是使用 Jprofiler/Netbeans 分析器进行分析会有什么额外的优势。如果有人提供任何相同的建议,将不胜感激。
java - Iterator.hasNext 和 for-each 循环之间是否有任何关系
我用JProfiler
它来分析我的应用程序,因为它是一个巨大的应用程序,所以我非常了解它的性能和效率。
这花费了太长时间,所以我将所有替换Iterator.hasNext
为,for-each
但是当我在 JProfilers CPU 视图中看到时,它向我显示了Iterator.hasNext
名为 where I am using的方法for-each
。
为什么会这样?这两者之间有什么关系吗?这是示例代码:
java - 通过 JProfiler 查找内存泄漏
我的问题与此不同,我对我的应用程序进行了分析,它太慢了。
完成一个过程后,我在堆遍历器中看到了一些活动对象。
虽然我们正在将一些数据从数据库缓存到,HashMap
但堆步行器向我展示了一些活动对象Resultset.getString
,例如Statement.getString
不应该存在的对象。
HashMap.put()
与上述两种方法相比,占用的内存要少得多。
我做的一切都很好吗?这个分析对吗?或者我遗漏了任何东西,内存被HashMap
自己占用,HeapWalker
只是向我展示了 JDBC(getString
和executeQuery
)的方法。
java - JProfiler :在垃圾收集器收集对象之后。如果堆上有任何 Live 对象,是内存泄漏吗?
我正在使用 JProfiler 来分析我的应用程序。我注意到,当我运行垃圾收集器时,所有标记的记录对象都变为绿色,一段时间后它再次面临创建和销毁对象的一些差异。
顺便说一句,我的应用程序此时仍在运行,我的应用程序是否面临内存泄漏问题或者这很常见。
有一些快照可以帮助您了解情况
以上是我运行垃圾收集器时的快照...
但一段时间后,这些条形变为部分绿色和红色......
java - HashMap 导致的内存泄漏
HashMap
由于我的代码,我面临内存泄漏。当我第一次登录应用程序时,它会HashMap
填充并使用它Map
来缓存一些数据。
我在我的应用程序中的几个地方使用了这个缓存的数据。
当应用程序中没有运行任何内容时,它的大小在登录后不断增长。只有在自动调用垃圾收集器或我调用它的情况下,大小才会减小。
但在那之后它再次开始增加。这肯定是内存泄漏,但我该如何避免呢?
我的分析器还显示ResultSet.getString()
和Statement.execute()
作为热点内存分配。这些方法用于填充此缓存。
是否因为这些方法而导致内存泄漏?我在 finally 块中关闭了数据库连接。
为什么它仍然向我展示这些方法?