JVM Tutorials - Herong's Tutorial Examples
∟java.lang.Runtime Class - The JVM Instance
∟What Is Runtime?
This section describes what is Runtime - A Java built-in class, java.lang.Runtime, that presents running instances of a Java Virtual Machine (JVM).
What Is Runtime?
java.lang.RunTime is a built-in class that presents running instances of a Java Virtual Machine (JVM).
In other word, every Java running application has a single instance of class Runtime.
To access the instance of RunTime of the current JVM, you can use the static class method,
getRuntime().
Runtime class allows the application to interface with the JVM instance through these methods:
- static Runtime getRuntime() - Returns the runtime object associated with the current Java application.
- int availableProcessors() - Returns the number of processors available to the Java virtual machine.
- long maxMemory() - Returns the maximum amount of memory that the Java virtual machine will attempt to use.
- long totalMemory() - Returns the total amount of memory in the Java virtual machine.
- long freeMemory() - Returns the amount of free memory in the Java Virtual Machine.
- void runFinalization() - Runs the finalization methods of any objects pending finalization.
- void gc() - Runs the garbage collector.
- void addShutdownHook(Thread hook) - Registers a new virtual-machine shutdown hook.
- boolean removeShutdownHook(Thread hook) - De-registers a previously-registered virtual-machine shutdown hook.
- void exit(int status) - Terminates the currently running Java virtual machine by initiating its shutdown sequence.
- void halt(int status) - Forcibly terminates the currently running Java virtual machine.
- Process exec(String command) - Executes the specified string command in a separate process.
- void load(String filename) - Loads the specified filename as a dynamic library.
- void loadLibrary(String libname) - Loads the dynamic library with the specified library name.
- void traceInstructions(boolean on) - Enables/Disables tracing of instructions.
- void traceMethodCalls(boolean on) - Enables/Disables tracing of method calls.
Tutorial example programs are provided in next sections to test those methods.
Table of Contents
About This Book
JVM (Java Virtual Machine) Specification
Java HotSpot VM - JVM by Oracle/Sun
►java.lang.Runtime Class - The JVM Instance
►What Is Runtime?
Printing Runtime Basic Information
Running the Garbage Collector Explicitly
Shutting Down or Terminating the JVM Instance
Executing System Commands
Loading Native Libraries
java.lang.System Class - The Operating System
ClassLoader Class - Class Loaders
Class Class - Class Reflections
JVM Runtime Data Areas
JVM Stack, Frame and Stack Overflow
Thread Testing Program and Result
CPU Impact of Multi-Thread Applications
I/O Impact of Multi-Thread Applications
CDS (Class Data Sharing)
Micro Benchmark Runner and JVM Options
Micro Benchmark Tests on "int" Operations
Micro Benchmark Tests on "long" Operations
Micro Benchmark Tests in JIT Compilation Mode
Micro Benchmark Tests on "float" and "double" Operations
OpenJ9 by Eclipse Foundation
JRockit JVM 28.2.7 by Oracle Corporation
Archived Tutorials
References
Full Version in PDF/EPUB