2016-09-23 19 views
5

JvisualVM'de iki eklenti var, biri örnekleyici, diğeri ise profil oluşturucu.JvisualVM'deki örnekleyici ve profiler arasındaki fark nedir?

Benzer bir kullanıcı arayüzüne sahip olduklarını da öğrendim, ancak sonuçların büyük bir farkı var, bu yüzden onlar için anlam farkı nedir?

Ve neden büyük bir farkları var? Genelde

cevap

10

:

sorunsuz tam çağrı yığını verir, böylece bir profilci, her zaman çalışan

; Zamanında herhangi bir noktada.

Bir örnekleyici, zaman zaman farklı bir noktada "anlık görüntüleri" çeker.

Şey: her şeyi "profil" ettiğinde, bu JVM'nizi önemli ölçüde yavaşlatır; ve birkaç saniye içinde muazzam veri miktarını oluşturur. Bir düşünün: profiler, her biri 'u ve her bir yönteminin çağrılmasını gerçekleştirecektir!

Bu nedenle, öncelikle uygulamanızın içinde neler olup bittiğini bilmediğinizde, öncelikle bir örnekleyici kullanmalısınız. Ve sonra sadece örneklerin size bir şey söylemesini umuyorsunuz; "Hey, bizim 10 000 örneğimizde, çoğu zaman o metottayız, neden böyle?" Ancak, sizin için “avlanma” yaptığınızı daha iyi anladığınız anda, bazı yöntemlere yol açan tüm çağrı zincirini yakalamak için tam bir profesör çalıştırmayı deneyebilirsiniz.

Ve sonra "her şey" profilini görüntülediğiniz, ancak öğesinin öğelerini hariç tuttuğu bazı "orta zemin" var. Diğer bir deyişle: çoğu profil oluşturucu, bu veya bu paketteki sınıflarda profil yöntemlerini söylemenize izin verir. Ama tabii ki - paketler/hiyerarşileri hariç tutmak, araştırmayı planladığınız yön oldukça iyi bir duyguya sahip olduğunuzda mantıklıdır.

+0

Harika bir açıklama geliyor. – Jason

İlgili konular