java.lang.Object
java.lang.Throwable
java.lang.Error
java.lang.VirtualMachineError
- All Implemented Interfaces:
- Serializable
- Direct Known Subclasses:
- InternalError, OutOfMemoryError, StackOverflowError, UnknownError
- See Also:
- Top Examples, Source Code
public VirtualMachineError()
- Geek's Notes:
- Description Add your codes or notes Search More Java Examples
public VirtualMachineError(String s)
- Geek's Notes:
- Description Add your codes or notes Search More Java Examples
[1879]Signals and Java dumps
By Anonymous on 2007/05/03 10:43:21 Rate
What have Java dumps got to do with signals? If the JVM terminates abnormally, such as when a SIGSEGV condition occurs, a Java core dump will be generated. This dump contains useful information, including the reason for the termination, environment data, the state of each thread, and more.
A useful feature of the JVM is the ability for a Java core dump to be generated on demand. On a Windows platform you can do this by typing CTRL-BREAK, which sends a SIGBREAK signal to the application. On Unix type platforms you send a SIGQUIT signal to the application ( this will usually be with CTRL-V or CTRL-\, depending on the platform, or command: kill -s SIGQUIT < process id > ) . Java core dumps generated this way can be particularly useful when a lockup is suspected. A useful technique for debugging lockups is taking two Java core dumps, one immediately after the other, and looking for differences.
From a signal handling point of view, for Unix type platforms a Java core dump contains the list of platform signals and identifies the installed signal handler for each. ( However, for z/OS only the library containing the signal handler is referenced. ) If you have an application that uses signal handlers, then a Java core dump can be useful to determine which function ( or library ) is actually being used as the handler. For Java signal handlers the handler identified in a Java core dump should be the JVM's intrDispatchMD ( ) function, from library libhpi.