what’s the difference between sampler and profiler in JvisualVM?

In general: A profiler is running all the time, so it gives you the complete call stack; at any given point in time. A sampler only takes “snapshots” at distinct point in times. Thing is: when you “profile” everything, then that slows down your JVM significantly; and it creates enormous amounts of data within a … Read more

What are the differences between JVisualVM and Java Mission Control?

One important point is that Mission Control is potentially not free to use on production environments. It is free for applications running in DEV & QA and Oracle are not currently enforcing the charges for production applications (as of Nov 2014). However, their executives have made it clear this may change in time.

VisualVM – Thread States

I found a very nice diagram which pretty much describes all you need/want to know. New The thread is in new state if you create an instance of Thread class but before the invocation of start() method. Runnable The thread is in runnable state after invocation of start() method, but the thread scheduler has not … Read more

Difference between sampling and profiling in jVisualVM

Sampling means taking lots of thread dumps and analyzing stack traces. This is usually faster, does not require runtime changes in your bytecode (which may break it), but is also less accurate. Profiling means instrumenting your classes and methods, so they “report” whenever they are run. This is more accurate, as it counts every invocation … Read more