class sun.nio.ch.Util
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.nio.ch.Util
super_class: java.lang.Object
{
private static final int TEMP_BUF_POOL_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static java.lang.ThreadLocal<java.lang.ref.SoftReference<java.nio.ByteBuffer>>[] bufferPool;
descriptor: [Ljava/lang/ThreadLocal;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: [Ljava/lang/ThreadLocal<Ljava/lang/ref/SoftReference<Ljava/nio/ByteBuffer;>;>;
private static java.lang.ThreadLocal<java.lang.ref.SoftReference<sun.nio.ch.Util$SelectorWrapper>> localSelector;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/lang/ThreadLocal<Ljava/lang/ref/SoftReference<Lsun/nio/ch/Util$SelectorWrapper;>;>;
private static java.lang.ThreadLocal<sun.nio.ch.Util$SelectorWrapper> localSelectorWrapper;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/lang/ThreadLocal<Lsun/nio/ch/Util$SelectorWrapper;>;
private static sun.misc.Unsafe unsafe;
descriptor: Lsun/misc/Unsafe;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int pageSize;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static volatile java.lang.reflect.Constructor directByteBufferConstructor;
descriptor: Ljava/lang/reflect/Constructor;
flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE
private static volatile java.lang.reflect.Constructor directByteBufferRConstructor;
descriptor: Ljava/lang/reflect/Constructor;
flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE
private static volatile java.lang.String bugLevel;
descriptor: Ljava/lang/String;
flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=1, args_size=0
0: ldc Lsun/nio/ch/Util;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic sun.nio.ch.Util.$assertionsDisabled:Z
3: invokestatic sun.nio.ch.Util.createThreadLocalBufferPool:()[Ljava/lang/ThreadLocal;
putstatic sun.nio.ch.Util.bufferPool:[Ljava/lang/ThreadLocal;
4: iconst_0
istore 0
start local 0 5: goto 8
6: StackMap locals: int
StackMap stack:
getstatic sun.nio.ch.Util.bufferPool:[Ljava/lang/ThreadLocal;
iload 0
new java.lang.ThreadLocal
dup
invokespecial java.lang.ThreadLocal.<init>:()V
aastore
7: iinc 0 1
StackMap locals:
StackMap stack:
8: iload 0
iconst_3
if_icmplt 6
end local 0 9: new java.lang.ThreadLocal
dup
invokespecial java.lang.ThreadLocal.<init>:()V
10: putstatic sun.nio.ch.Util.localSelector:Ljava/lang/ThreadLocal;
11: new java.lang.ThreadLocal
dup
invokespecial java.lang.ThreadLocal.<init>:()V
12: putstatic sun.nio.ch.Util.localSelectorWrapper:Ljava/lang/ThreadLocal;
13: invokestatic sun.misc.Unsafe.getUnsafe:()Lsun/misc/Unsafe;
putstatic sun.nio.ch.Util.unsafe:Lsun/misc/Unsafe;
14: iconst_m1
putstatic sun.nio.ch.Util.pageSize:I
15: aconst_null
putstatic sun.nio.ch.Util.directByteBufferConstructor:Ljava/lang/reflect/Constructor;
16: aconst_null
putstatic sun.nio.ch.Util.directByteBufferRConstructor:Ljava/lang/reflect/Constructor;
17: aconst_null
putstatic sun.nio.ch.Util.bugLevel:Ljava/lang/String;
return
LocalVariableTable:
Start End Slot Name Signature
5 9 0 i I
void <init>();
descriptor: ()V
flags: (0x0000)
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/nio/ch/Util;
static java.lang.ThreadLocal<java.lang.ref.SoftReference<java.nio.ByteBuffer>>[] createThreadLocalBufferPool();
descriptor: ()[Ljava/lang/ThreadLocal;
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: iconst_3
anewarray java.lang.ThreadLocal
areturn
LocalVariableTable:
Start End Slot Name Signature
Signature: ()[Ljava/lang/ThreadLocal<Ljava/lang/ref/SoftReference<Ljava/nio/ByteBuffer;>;>;
static java.nio.ByteBuffer getTemporaryDirectBuffer(int);
descriptor: (I)Ljava/nio/ByteBuffer;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 11
3: StackMap locals: java.nio.ByteBuffer int
StackMap stack:
getstatic sun.nio.ch.Util.bufferPool:[Ljava/lang/ThreadLocal;
iload 2
aaload
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.lang.ref.SoftReference
astore 3
start local 3 4: aload 3
ifnull 10
aload 3
invokevirtual java.lang.ref.SoftReference.get:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
dup
astore 1
ifnull 10
5: aload 1
invokevirtual java.nio.ByteBuffer.capacity:()I
iload 0
if_icmplt 10
6: aload 1
invokevirtual java.nio.ByteBuffer.rewind:()Ljava/nio/Buffer;
pop
7: aload 1
iload 0
invokevirtual java.nio.ByteBuffer.limit:(I)Ljava/nio/Buffer;
pop
8: getstatic sun.nio.ch.Util.bufferPool:[Ljava/lang/ThreadLocal;
iload 2
aaload
aconst_null
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
9: aload 1
areturn
end local 3 10: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
11: iload 2
iconst_3
if_icmplt 3
end local 2 12: iload 0
invokestatic java.nio.ByteBuffer.allocateDirect:(I)Ljava/nio/ByteBuffer;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 size I
1 13 1 buf Ljava/nio/ByteBuffer;
2 12 2 i I
4 10 3 ref Ljava/lang/ref/SoftReference<Ljava/nio/ByteBuffer;>;
MethodParameters:
Name Flags
size
static void releaseTemporaryDirectBuffer(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: return
2: StackMap locals:
StackMap stack:
iconst_0
istore 1
start local 1 3: goto 9
4: StackMap locals: int
StackMap stack:
getstatic sun.nio.ch.Util.bufferPool:[Ljava/lang/ThreadLocal;
iload 1
aaload
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.lang.ref.SoftReference
astore 2
start local 2 5: aload 2
ifnull 6
aload 2
invokevirtual java.lang.ref.SoftReference.get:()Ljava/lang/Object;
ifnonnull 8
6: StackMap locals: java.lang.ref.SoftReference
StackMap stack:
getstatic sun.nio.ch.Util.bufferPool:[Ljava/lang/ThreadLocal;
iload 1
aaload
new java.lang.ref.SoftReference
dup
aload 0
invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
7: return
end local 2 8: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
9: iload 1
iconst_3
if_icmplt 4
end local 1 10: iconst_0
istore 1
start local 1 11: goto 18
12: StackMap locals:
StackMap stack:
getstatic sun.nio.ch.Util.bufferPool:[Ljava/lang/ThreadLocal;
iload 1
aaload
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.lang.ref.SoftReference
astore 2
start local 2 13: aload 2
invokevirtual java.lang.ref.SoftReference.get:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 3
start local 3 14: aload 3
ifnull 15
aload 0
invokevirtual java.nio.ByteBuffer.capacity:()I
aload 3
invokevirtual java.nio.ByteBuffer.capacity:()I
if_icmple 17
15: StackMap locals: java.lang.ref.SoftReference java.nio.ByteBuffer
StackMap stack:
getstatic sun.nio.ch.Util.bufferPool:[Ljava/lang/ThreadLocal;
iload 1
aaload
new java.lang.ref.SoftReference
dup
aload 0
invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
16: return
end local 3 end local 2 17: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
18: iload 1
iconst_3
if_icmplt 12
end local 1 19: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 buf Ljava/nio/ByteBuffer;
3 10 1 i I
5 8 2 ref Ljava/lang/ref/SoftReference<Ljava/nio/ByteBuffer;>;
11 19 1 i I
13 17 2 ref Ljava/lang/ref/SoftReference<Ljava/nio/ByteBuffer;>;
14 17 3 inCacheBuf Ljava/nio/ByteBuffer;
MethodParameters:
Name Flags
buf
static java.nio.channels.Selector getTemporarySelector(java.nio.channels.SelectableChannel);
descriptor: (Ljava/nio/channels/SelectableChannel;)Ljava/nio/channels/Selector;
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=4, args_size=1
start local 0 0: getstatic sun.nio.ch.Util.localSelector:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.lang.ref.SoftReference
astore 1
start local 1 1: aconst_null
astore 2
start local 2 2: aconst_null
astore 3
start local 3 3: aload 1
ifnull 7
4: aload 1
invokevirtual java.lang.ref.SoftReference.get:()Ljava/lang/Object;
checkcast sun.nio.ch.Util$SelectorWrapper
dup
astore 2
ifnull 7
5: aload 2
invokevirtual sun.nio.ch.Util$SelectorWrapper.get:()Ljava/nio/channels/Selector;
dup
astore 3
ifnull 7
6: aload 3
invokevirtual java.nio.channels.Selector.provider:()Ljava/nio/channels/spi/SelectorProvider;
aload 0
invokevirtual java.nio.channels.SelectableChannel.provider:()Ljava/nio/channels/spi/SelectorProvider;
if_acmpeq 12
7: StackMap locals: java.lang.ref.SoftReference sun.nio.ch.Util$SelectorWrapper java.nio.channels.Selector
StackMap stack:
aload 0
invokevirtual java.nio.channels.SelectableChannel.provider:()Ljava/nio/channels/spi/SelectorProvider;
invokevirtual java.nio.channels.spi.SelectorProvider.openSelector:()Ljava/nio/channels/spi/AbstractSelector;
astore 3
8: getstatic sun.nio.ch.Util.localSelector:Ljava/lang/ThreadLocal;
new java.lang.ref.SoftReference
dup
9: new sun.nio.ch.Util$SelectorWrapper
dup
aload 3
invokespecial sun.nio.ch.Util$SelectorWrapper.<init>:(Ljava/nio/channels/Selector;)V
invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
10: invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
11: goto 13
12: StackMap locals:
StackMap stack:
getstatic sun.nio.ch.Util.localSelectorWrapper:Ljava/lang/ThreadLocal;
aload 2
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
13: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 sc Ljava/nio/channels/SelectableChannel;
1 14 1 ref Ljava/lang/ref/SoftReference<Lsun/nio/ch/Util$SelectorWrapper;>;
2 14 2 selWrapper Lsun/nio/ch/Util$SelectorWrapper;
3 14 3 sel Ljava/nio/channels/Selector;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
sc
static void releaseTemporarySelector(java.nio.channels.Selector);
descriptor: (Ljava/nio/channels/Selector;)V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.nio.channels.Selector.selectNow:()I
pop
1: getstatic sun.nio.ch.Util.$assertionsDisabled:Z
ifne 2
aload 0
invokevirtual java.nio.channels.Selector.keys:()Ljava/util/Set;
invokeinterface java.util.Set.isEmpty:()Z
ifne 2
new java.lang.AssertionError
dup
ldc "Temporary selector not empty"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
getstatic sun.nio.ch.Util.localSelectorWrapper:Ljava/lang/ThreadLocal;
aconst_null
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 sel Ljava/nio/channels/Selector;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
sel
static java.nio.ByteBuffer[] subsequence(java.nio.ByteBuffer[], int, int);
descriptor: ([Ljava/nio/ByteBuffer;II)[Ljava/nio/ByteBuffer;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iload 1
ifne 2
iload 2
aload 0
arraylength
if_icmpne 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
iload 2
istore 3
start local 3 3: iload 3
anewarray java.nio.ByteBuffer
astore 4
start local 4 4: iconst_0
istore 5
start local 5 5: goto 8
6: StackMap locals: int java.nio.ByteBuffer[] int
StackMap stack:
aload 4
iload 5
aload 0
iload 1
iload 5
iadd
aaload
aastore
7: iinc 5 1
StackMap locals:
StackMap stack:
8: iload 5
iload 3
if_icmplt 6
end local 5 9: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 bs [Ljava/nio/ByteBuffer;
0 10 1 offset I
0 10 2 length I
3 10 3 n I
4 10 4 bs2 [Ljava/nio/ByteBuffer;
5 9 5 i I
MethodParameters:
Name Flags
bs
offset
length
static <E> java.util.Set<E> ungrowableSet(java.util.Set<E>);
descriptor: (Ljava/util/Set;)Ljava/util/Set;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new sun.nio.ch.Util$1
dup
aload 0
invokespecial sun.nio.ch.Util$1.<init>:(Ljava/util/Set;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 s Ljava/util/Set<TE;>;
Signature: <E:Ljava/lang/Object;>(Ljava/util/Set<TE;>;)Ljava/util/Set<TE;>;
MethodParameters:
Name Flags
s final
private static byte _get(long);
descriptor: (J)B
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: getstatic sun.nio.ch.Util.unsafe:Lsun/misc/Unsafe;
lload 0
invokevirtual sun.misc.Unsafe.getByte:(J)B
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a J
MethodParameters:
Name Flags
a
private static void _put(long, byte);
descriptor: (JB)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 2 0: getstatic sun.nio.ch.Util.unsafe:Lsun/misc/Unsafe;
lload 0
iload 2
invokevirtual sun.misc.Unsafe.putByte:(JB)V
1: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 a J
0 2 2 b B
MethodParameters:
Name Flags
a
b
static void erase(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: getstatic sun.nio.ch.Util.unsafe:Lsun/misc/Unsafe;
aload 0
checkcast sun.nio.ch.DirectBuffer
invokeinterface sun.nio.ch.DirectBuffer.address:()J
aload 0
invokevirtual java.nio.ByteBuffer.capacity:()I
i2l
iconst_0
invokevirtual sun.misc.Unsafe.setMemory:(JJB)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 bb Ljava/nio/ByteBuffer;
MethodParameters:
Name Flags
bb
static sun.misc.Unsafe unsafe();
descriptor: ()Lsun/misc/Unsafe;
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic sun.nio.ch.Util.unsafe:Lsun/misc/Unsafe;
areturn
LocalVariableTable:
Start End Slot Name Signature
static int pageSize();
descriptor: ()I
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic sun.nio.ch.Util.pageSize:I
iconst_m1
if_icmpne 2
1: invokestatic sun.nio.ch.Util.unsafe:()Lsun/misc/Unsafe;
invokevirtual sun.misc.Unsafe.pageSize:()I
putstatic sun.nio.ch.Util.pageSize:I
2: StackMap locals:
StackMap stack:
getstatic sun.nio.ch.Util.pageSize:I
ireturn
LocalVariableTable:
Start End Slot Name Signature
private static void initDBBConstructor();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new sun.nio.ch.Util$2
dup
invokespecial sun.nio.ch.Util$2.<init>:()V
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
pop
1: return
LocalVariableTable:
Start End Slot Name Signature
static java.nio.MappedByteBuffer newMappedByteBuffer(int, long, java.lang.Runnable);
descriptor: (IJLjava/lang/Runnable;)Ljava/nio/MappedByteBuffer;
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=5, args_size=3
start local 0 start local 1 start local 3 0: getstatic sun.nio.ch.Util.directByteBufferConstructor:Ljava/lang/reflect/Constructor;
ifnonnull 2
1: invokestatic sun.nio.ch.Util.initDBBConstructor:()V
2: StackMap locals:
StackMap stack:
getstatic sun.nio.ch.Util.directByteBufferConstructor:Ljava/lang/reflect/Constructor;
3: iconst_3
anewarray java.lang.Object
dup
iconst_0
new java.lang.Integer
dup
iload 0
invokespecial java.lang.Integer.<init>:(I)V
aastore
dup
iconst_1
4: new java.lang.Long
dup
lload 1
invokespecial java.lang.Long.<init>:(J)V
aastore
dup
iconst_2
5: aload 3
aastore
6: invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.MappedByteBuffer
astore 4
start local 4 7: goto 14
end local 4 StackMap locals:
StackMap stack: java.lang.InstantiationException
8: pop
9: new java.lang.InternalError
dup
invokespecial java.lang.InternalError.<init>:()V
athrow
10: StackMap locals:
StackMap stack: java.lang.IllegalAccessException
pop
11: new java.lang.InternalError
dup
invokespecial java.lang.InternalError.<init>:()V
athrow
12: StackMap locals:
StackMap stack: java.lang.reflect.InvocationTargetException
pop
13: new java.lang.InternalError
dup
invokespecial java.lang.InternalError.<init>:()V
athrow
start local 4 14: StackMap locals: java.nio.MappedByteBuffer
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 size I
0 15 1 addr J
0 15 3 unmapper Ljava/lang/Runnable;
7 8 4 dbb Ljava/nio/MappedByteBuffer;
14 15 4 dbb Ljava/nio/MappedByteBuffer;
Exception table:
from to target type
2 7 8 Class java.lang.InstantiationException
2 7 10 Class java.lang.IllegalAccessException
2 7 12 Class java.lang.reflect.InvocationTargetException
MethodParameters:
Name Flags
size
addr
unmapper
private static void initDBBRConstructor();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new sun.nio.ch.Util$3
dup
invokespecial sun.nio.ch.Util$3.<init>:()V
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
pop
1: return
LocalVariableTable:
Start End Slot Name Signature
static java.nio.MappedByteBuffer newMappedByteBufferR(int, long, java.lang.Runnable);
descriptor: (IJLjava/lang/Runnable;)Ljava/nio/MappedByteBuffer;
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=5, args_size=3
start local 0 start local 1 start local 3 0: getstatic sun.nio.ch.Util.directByteBufferRConstructor:Ljava/lang/reflect/Constructor;
ifnonnull 2
1: invokestatic sun.nio.ch.Util.initDBBRConstructor:()V
2: StackMap locals:
StackMap stack:
getstatic sun.nio.ch.Util.directByteBufferRConstructor:Ljava/lang/reflect/Constructor;
3: iconst_3
anewarray java.lang.Object
dup
iconst_0
new java.lang.Integer
dup
iload 0
invokespecial java.lang.Integer.<init>:(I)V
aastore
dup
iconst_1
4: new java.lang.Long
dup
lload 1
invokespecial java.lang.Long.<init>:(J)V
aastore
dup
iconst_2
5: aload 3
aastore
6: invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.MappedByteBuffer
astore 4
start local 4 7: goto 14
end local 4 StackMap locals:
StackMap stack: java.lang.InstantiationException
8: pop
9: new java.lang.InternalError
dup
invokespecial java.lang.InternalError.<init>:()V
athrow
10: StackMap locals:
StackMap stack: java.lang.IllegalAccessException
pop
11: new java.lang.InternalError
dup
invokespecial java.lang.InternalError.<init>:()V
athrow
12: StackMap locals:
StackMap stack: java.lang.reflect.InvocationTargetException
pop
13: new java.lang.InternalError
dup
invokespecial java.lang.InternalError.<init>:()V
athrow
start local 4 14: StackMap locals: java.nio.MappedByteBuffer
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 size I
0 15 1 addr J
0 15 3 unmapper Ljava/lang/Runnable;
7 8 4 dbb Ljava/nio/MappedByteBuffer;
14 15 4 dbb Ljava/nio/MappedByteBuffer;
Exception table:
from to target type
2 7 8 Class java.lang.InstantiationException
2 7 10 Class java.lang.IllegalAccessException
2 7 12 Class java.lang.reflect.InvocationTargetException
MethodParameters:
Name Flags
size
addr
unmapper
static boolean atBugLevel(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: getstatic sun.nio.ch.Util.bugLevel:Ljava/lang/String;
ifnonnull 8
1: invokestatic sun.misc.VM.isBooted:()Z
ifne 3
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
new sun.security.action.GetPropertyAction
dup
ldc "sun.nio.ch.bugLevel"
invokespecial sun.security.action.GetPropertyAction.<init>:(Ljava/lang/String;)V
4: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.String
astore 1
start local 1 5: aload 1
ifnull 6
aload 1
goto 7
StackMap locals: java.lang.String
StackMap stack:
6: ldc ""
StackMap locals:
StackMap stack: java.lang.String
7: putstatic sun.nio.ch.Util.bugLevel:Ljava/lang/String;
end local 1 8: StackMap locals:
StackMap stack:
getstatic sun.nio.ch.Util.bugLevel:Ljava/lang/String;
aload 0
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 bl Ljava/lang/String;
5 8 1 value Ljava/lang/String;
MethodParameters:
Name Flags
bl
}
SourceFile: "Util.java"
NestMembers:
sun.nio.ch.Util$1 sun.nio.ch.Util$2 sun.nio.ch.Util$3 sun.nio.ch.Util$SelectorWrapper sun.nio.ch.Util$SelectorWrapper$Closer
InnerClasses:
sun.nio.ch.Util$1
sun.nio.ch.Util$2
sun.nio.ch.Util$3
private SelectorWrapper = sun.nio.ch.Util$SelectorWrapper of sun.nio.ch.Util