Home » Tag Archives: JVM (page 23)

Tag Archives: JVM

JVM: How to analyze Thread Dump

This article will teach you how to analyze a JVM Thread Dump and pinpoint the root cause of your problem(s). From my perspective, Thread Dump analysis is the most important skillset to master for any individual involved in Java EE production support. The amount of information that you can derive from Thread Dump snapshots is often much beyond than what ...

Read More »

Patching Java at runtime

This article will slightly highlight how to fix issues with third party libs that can’t be circumvented are difficult to exclude/bypass/replaced simply provide no bugfix In such cases solving the issue remains a challengig task. As a motivation for this scenario consider the attacks on “hash indexed” data structures, such as java.util.Hashtable and java.util.HashMap (for those who are not familar ...

Read More »

What is behind System.nanoTime()?

In java world there is a very good perception about System.nanoTime(). There is always some guys who says that it is fast, reliable and, whenever possible, should be used for timings instead of System.currentTimemillis(). In overall he is absolutely lying, it is not bad at all, but there are some drawback which developer should be aware about. Also, although they ...

Read More »

Practical Garbage Collection, part 1 – Introduction

This is the first part of a series of blog posts I intend to write, whose aim will be to explain how garbage collection works in the real world (in particular, with the JVM). I will cover some theory that I believe is necessary to understand garbage collection enough for practical purposes, but will keep it to a minimum. The ...

Read More »

Debugging the JVM

In some (rare) cases you might find yourself in the situation that you managed to crash the JVM itself. I most recently managed this by setting the name of a ThreadGroup to null. In these cases it is useful to debug the JVM itself so that the crash can be located more precisely. Here are the steps to do it ...

Read More »

JVM options: -client vs -server

Have you ever wonder what is this -client or -server switch when you run your java app? e.g.: javaw.exe -client com.blogspot.sdoulger.LoopTest that are also displayed in the Help of the java.exe e.g. where options include: -client to select the “client” VM -server to select the “server” VM What’s the difference between the -client and -server systems? These two systems are ...

Read More »