public class sun.misc.VM
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.misc.VM
super_class: java.lang.Object
{
private static boolean suspended;
descriptor: Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
public static final int STATE_GREEN;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public static final int STATE_YELLOW;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public static final int STATE_RED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
RuntimeVisibleAnnotations:
java.lang.Deprecated()
private static volatile boolean booted;
descriptor: Z
flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE
private static final java.lang.Object lock;
descriptor: Ljava/lang/Object;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static long directMemory;
descriptor: J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static boolean pageAlignDirectMemory;
descriptor: Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static boolean defaultAllowArraySyntax;
descriptor: Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static boolean allowArraySyntax;
descriptor: Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final java.util.Properties savedProps;
descriptor: Ljava/util/Properties;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static volatile int finalRefCount;
descriptor: I
flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE
private static volatile int peakFinalRefCount;
descriptor: I
flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE
private static final int JVMTI_THREAD_STATE_ALIVE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int JVMTI_THREAD_STATE_TERMINATED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int JVMTI_THREAD_STATE_RUNNABLE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final int JVMTI_THREAD_STATE_BLOCKED_ON_MONITOR_ENTER;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1024
private static final int JVMTI_THREAD_STATE_WAITING_INDEFINITELY;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 16
private static final int JVMTI_THREAD_STATE_WAITING_WITH_TIMEOUT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 32
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: iconst_0
putstatic sun.misc.VM.suspended:Z
1: iconst_0
putstatic sun.misc.VM.booted:Z
2: new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putstatic sun.misc.VM.lock:Ljava/lang/Object;
3: ldc 67108864
putstatic sun.misc.VM.directMemory:J
4: iconst_0
putstatic sun.misc.VM.defaultAllowArraySyntax:Z
5: getstatic sun.misc.VM.defaultAllowArraySyntax:Z
putstatic sun.misc.VM.allowArraySyntax:Z
6: new java.util.Properties
dup
invokespecial java.util.Properties.<init>:()V
putstatic sun.misc.VM.savedProps:Ljava/util/Properties;
7: iconst_0
putstatic sun.misc.VM.finalRefCount:I
8: iconst_0
putstatic sun.misc.VM.peakFinalRefCount:I
9: invokestatic sun.misc.VM.initialize:()V
10: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/misc/VM;
public static boolean threadsSuspended();
descriptor: ()Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic sun.misc.VM.suspended:Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public static boolean allowThreadSuspension(java.lang.ThreadGroup, boolean);
descriptor: (Ljava/lang/ThreadGroup;Z)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual java.lang.ThreadGroup.allowThreadSuspension:(Z)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 g Ljava/lang/ThreadGroup;
0 1 1 b Z
MethodParameters:
Name Flags
g
b
public static boolean suspendThreads();
descriptor: ()Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: iconst_1
putstatic sun.misc.VM.suspended:Z
1: iconst_1
ireturn
LocalVariableTable:
Start End Slot Name Signature
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public static void unsuspendThreads();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: iconst_0
putstatic sun.misc.VM.suspended:Z
1: return
LocalVariableTable:
Start End Slot Name Signature
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public static void unsuspendSomeThreads();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=0, locals=0, args_size=0
0: return
LocalVariableTable:
Start End Slot Name Signature
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public static final int getState();
descriptor: ()I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Code:
stack=1, locals=0, args_size=0
0: iconst_1
ireturn
LocalVariableTable:
Start End Slot Name Signature
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public static void registerVMNotification(sun.misc.VMNotification);
descriptor: (Lsun/misc/VMNotification;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 n Lsun/misc/VMNotification;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
n
public static void asChange(int, int);
descriptor: (II)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 as_old I
0 1 1 as_new I
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
as_old
as_new
public static void asChange_otherthread(int, int);
descriptor: (II)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 as_old I
0 1 1 as_new I
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
as_old
as_new
public static void booted();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=0
0: getstatic sun.misc.VM.lock:Ljava/lang/Object;
dup
astore 0
monitorenter
1: iconst_1
putstatic sun.misc.VM.booted:Z
2: getstatic sun.misc.VM.lock:Ljava/lang/Object;
invokevirtual java.lang.Object.notifyAll:()V
3: aload 0
monitorexit
4: goto 7
StackMap locals: java.lang.Object
StackMap stack: java.lang.Throwable
5: aload 0
monitorexit
6: athrow
7: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
1 4 5 any
5 6 5 any
public static boolean isBooted();
descriptor: ()Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic sun.misc.VM.booted:Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
public static void awaitBooted();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=0
0: getstatic sun.misc.VM.lock:Ljava/lang/Object;
dup
astore 0
monitorenter
1: goto 3
2: StackMap locals: java.lang.Object
StackMap stack:
getstatic sun.misc.VM.lock:Ljava/lang/Object;
invokevirtual java.lang.Object.wait:()V
3: StackMap locals:
StackMap stack:
getstatic sun.misc.VM.booted:Z
ifeq 2
4: aload 0
monitorexit
5: goto 8
StackMap locals:
StackMap stack: java.lang.Throwable
6: aload 0
monitorexit
7: athrow
8: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
1 5 6 any
6 7 6 any
Exceptions:
throws java.lang.InterruptedException
public static long maxDirectMemory();
descriptor: ()J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic sun.misc.VM.directMemory:J
lreturn
LocalVariableTable:
Start End Slot Name Signature
public static boolean isDirectMemoryPageAligned();
descriptor: ()Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic sun.misc.VM.pageAlignDirectMemory:Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
public static boolean allowArraySyntax();
descriptor: ()Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic sun.misc.VM.allowArraySyntax:Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
public static boolean isSystemDomainLoader(java.lang.ClassLoader);
descriptor: (Ljava/lang/ClassLoader;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 loader Ljava/lang/ClassLoader;
MethodParameters:
Name Flags
loader
public static java.lang.String getSavedProperty(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: getstatic sun.misc.VM.savedProps:Ljava/util/Properties;
invokevirtual java.util.Properties.isEmpty:()Z
ifeq 2
1: new java.lang.IllegalStateException
dup
ldc "Should be non-empty if initialized"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
getstatic sun.misc.VM.savedProps:Ljava/util/Properties;
aload 0
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 key Ljava/lang/String;
MethodParameters:
Name Flags
key
public static void saveAndRemoveProperties(java.util.Properties);
descriptor: (Ljava/util/Properties;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: getstatic sun.misc.VM.booted:Z
ifeq 2
1: new java.lang.IllegalStateException
dup
ldc "System initialization has completed"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
getstatic sun.misc.VM.savedProps:Ljava/util/Properties;
aload 0
invokevirtual java.util.Properties.putAll:(Ljava/util/Map;)V
3: aload 0
ldc "sun.nio.MaxDirectMemorySize"
invokevirtual java.util.Properties.remove:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 1
start local 1 4: aload 1
ifnull 11
5: aload 1
ldc "-1"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 8
6: invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
invokevirtual java.lang.Runtime.maxMemory:()J
putstatic sun.misc.VM.directMemory:J
7: goto 11
8: StackMap locals: java.lang.String
StackMap stack:
aload 1
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
lstore 2
start local 2 9: lload 2
ldc -1
lcmp
ifle 11
10: lload 2
putstatic sun.misc.VM.directMemory:J
end local 2 11: StackMap locals:
StackMap stack:
aload 0
ldc "sun.nio.PageAlignDirectMemory"
invokevirtual java.util.Properties.remove:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 1
12: ldc "true"
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
13: iconst_1
putstatic sun.misc.VM.pageAlignDirectMemory:Z
14: StackMap locals:
StackMap stack:
aload 0
ldc "sun.lang.ClassLoader.allowArraySyntax"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 1
15: aload 1
ifnonnull 17
16: getstatic sun.misc.VM.defaultAllowArraySyntax:Z
goto 18
17: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.Boolean.parseBoolean:(Ljava/lang/String;)Z
18: StackMap locals:
StackMap stack: int
putstatic sun.misc.VM.allowArraySyntax:Z
19: aload 0
ldc "java.lang.Integer.IntegerCache.high"
invokevirtual java.util.Properties.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
20: aload 0
ldc "sun.zip.disableMemoryMapping"
invokevirtual java.util.Properties.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
21: aload 0
ldc "sun.java.launcher.diag"
invokevirtual java.util.Properties.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
22: aload 0
ldc "sun.cds.enableSharedLookupCache"
invokevirtual java.util.Properties.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
23: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 props Ljava/util/Properties;
4 24 1 s Ljava/lang/String;
9 11 2 l J
MethodParameters:
Name Flags
props
public static void initializeOSEnvironment();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic sun.misc.VM.booted:Z
ifne 2
1: invokestatic sun.misc.OSEnvironment.initialize:()V
2: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
public static int getFinalRefCount();
descriptor: ()I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic sun.misc.VM.finalRefCount:I
ireturn
LocalVariableTable:
Start End Slot Name Signature
public static int getPeakFinalRefCount();
descriptor: ()I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic sun.misc.VM.peakFinalRefCount:I
ireturn
LocalVariableTable:
Start End Slot Name Signature
public static void addFinalRefCount(int);
descriptor: (I)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic sun.misc.VM.finalRefCount:I
iload 0
iadd
putstatic sun.misc.VM.finalRefCount:I
1: getstatic sun.misc.VM.finalRefCount:I
getstatic sun.misc.VM.peakFinalRefCount:I
if_icmple 3
2: getstatic sun.misc.VM.finalRefCount:I
putstatic sun.misc.VM.peakFinalRefCount:I
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 n I
MethodParameters:
Name Flags
n
public static java.lang.Thread$State toThreadState(int);
descriptor: (I)Ljava/lang/Thread$State;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
iconst_4
iand
ifeq 2
1: getstatic java.lang.Thread$State.RUNNABLE:Ljava/lang/Thread$State;
areturn
2: StackMap locals:
StackMap stack:
iload 0
sipush 1024
iand
ifeq 4
3: getstatic java.lang.Thread$State.BLOCKED:Ljava/lang/Thread$State;
areturn
4: StackMap locals:
StackMap stack:
iload 0
bipush 16
iand
ifeq 6
5: getstatic java.lang.Thread$State.WAITING:Ljava/lang/Thread$State;
areturn
6: StackMap locals:
StackMap stack:
iload 0
bipush 32
iand
ifeq 8
7: getstatic java.lang.Thread$State.TIMED_WAITING:Ljava/lang/Thread$State;
areturn
8: StackMap locals:
StackMap stack:
iload 0
iconst_2
iand
ifeq 10
9: getstatic java.lang.Thread$State.TERMINATED:Ljava/lang/Thread$State;
areturn
10: StackMap locals:
StackMap stack:
iload 0
iconst_1
iand
ifne 12
11: getstatic java.lang.Thread$State.NEW:Ljava/lang/Thread$State;
areturn
12: StackMap locals:
StackMap stack:
getstatic java.lang.Thread$State.RUNNABLE:Ljava/lang/Thread$State;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 threadStatus I
MethodParameters:
Name Flags
threadStatus
public static native java.lang.ClassLoader latestUserDefinedLoader0();
descriptor: ()Ljava/lang/ClassLoader;
flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
public static java.lang.ClassLoader latestUserDefinedLoader();
descriptor: ()Ljava/lang/ClassLoader;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=0
0: invokestatic sun.misc.VM.latestUserDefinedLoader0:()Ljava/lang/ClassLoader;
astore 0
start local 0 1: aload 0
ifnull 3
2: aload 0
areturn
3: StackMap locals: java.lang.ClassLoader
StackMap stack:
invokestatic sun.misc.Launcher$ExtClassLoader.getExtClassLoader:()Lsun/misc/Launcher$ExtClassLoader;
4: areturn
5: StackMap locals:
StackMap stack: java.io.IOException
pop
6: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 7 0 loader Ljava/lang/ClassLoader;
Exception table:
from to target type
3 4 5 Class java.io.IOException
private static native void initialize();
descriptor: ()V
flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
}
SourceFile: "VM.java"
InnerClasses:
public final State = java.lang.Thread$State of java.lang.Thread
ExtClassLoader = sun.misc.Launcher$ExtClassLoader of sun.misc.Launcher