gpt4 book ai didi

java - JvisualVM 中的采样器和探查器有什么区别?

转载 作者:IT老高 更新时间:2023-10-28 20:45:26 25 4
gpt4 key购买 nike

我发现JvisualVM中有两个插件,一个是sampler,另一个是profiler。

我也发现他们有一个相似的用户界面,但是结果有很大的不同,那么差异对他们来说意味着什么?

为什么它们有很大的不同?

最佳答案

一般:

分析器一直在运行,因此它为您提供了完整的调用堆栈;在任何给定的时间点。

采样器只在不同的时间点拍摄“快照”。

问题是:当您“分析”所有内容时,这会显着减慢您的 JVM;它会在几秒钟内创建大量数据。想一想:分析器会记下发生的每一个方法调用!

通常,当您“不知道”应用程序中发生了什么时,您最初会使用采样器。然后你只希望样本能告诉你一些事情;就像“嘿,在我们的 10K 样本中,我们大部分时间都在使用这种方法,这是为什么呢?”但是,一旦您更好地了解自己在“寻找”什么,您就会尝试执行完整的分析器运行,以捕获通向某个方法的整个调用链。

然后是一些“中间立场”——你可以在其中描述“一切”,但排除事物。换句话说:大多数分析器允许您说“在这个或那个包中的类中分析方法”。但当然 - 排除包/层次结构只有在您已经非常清楚您打算调查的方向时才有意义。

关于java - JvisualVM 中的采样器和探查器有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39655945/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com