public final class com.android.internal.os.SomeArgs
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.android.internal.os.SomeArgs
super_class: java.lang.Object
{
private static final int MAX_POOL_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 10
private static com.android.internal.os.SomeArgs sPool;
descriptor: Lcom/android/internal/os/SomeArgs;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int sPoolSize;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.lang.Object sPoolLock;
descriptor: Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private com.android.internal.os.SomeArgs mNext;
descriptor: Lcom/android/internal/os/SomeArgs;
flags: (0x0002) ACC_PRIVATE
private boolean mInPool;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
static final int WAIT_NONE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
static final int WAIT_WAITING;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1
static final int WAIT_FINISHED;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 2
int mWaitState;
descriptor: I
flags: (0x0000)
public java.lang.Object arg1;
descriptor: Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
public java.lang.Object arg2;
descriptor: Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
public java.lang.Object arg3;
descriptor: Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
public java.lang.Object arg4;
descriptor: Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
public java.lang.Object arg5;
descriptor: Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
public java.lang.Object arg6;
descriptor: Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
public java.lang.Object arg7;
descriptor: Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
public java.lang.Object arg8;
descriptor: Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
public java.lang.Object arg9;
descriptor: Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
public int argi1;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public int argi2;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public int argi3;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public int argi4;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public int argi5;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public int argi6;
descriptor: I
flags: (0x0001) ACC_PUBLIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putstatic com.android.internal.os.SomeArgs.sPoolLock:Ljava/lang/Object;
1: return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield com.android.internal.os.SomeArgs.mWaitState:I
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/android/internal/os/SomeArgs;
public static com.android.internal.os.SomeArgs obtain();
descriptor: ()Lcom/android/internal/os/SomeArgs;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=0
0: getstatic com.android.internal.os.SomeArgs.sPoolLock:Ljava/lang/Object;
dup
astore 0
monitorenter
1: getstatic com.android.internal.os.SomeArgs.sPoolSize:I
ifle 9
2: getstatic com.android.internal.os.SomeArgs.sPool:Lcom/android/internal/os/SomeArgs;
astore 1
start local 1 3: getstatic com.android.internal.os.SomeArgs.sPool:Lcom/android/internal/os/SomeArgs;
getfield com.android.internal.os.SomeArgs.mNext:Lcom/android/internal/os/SomeArgs;
putstatic com.android.internal.os.SomeArgs.sPool:Lcom/android/internal/os/SomeArgs;
4: aload 1
aconst_null
putfield com.android.internal.os.SomeArgs.mNext:Lcom/android/internal/os/SomeArgs;
5: aload 1
iconst_0
putfield com.android.internal.os.SomeArgs.mInPool:Z
6: getstatic com.android.internal.os.SomeArgs.sPoolSize:I
iconst_1
isub
putstatic com.android.internal.os.SomeArgs.sPoolSize:I
7: aload 1
aload 0
monitorexit
8: areturn
end local 1 9: StackMap locals: java.lang.Object
StackMap stack:
new com.android.internal.os.SomeArgs
dup
invokespecial com.android.internal.os.SomeArgs.<init>:()V
aload 0
monitorexit
10: areturn
11: StackMap locals:
StackMap stack: java.lang.Throwable
aload 0
monitorexit
12: athrow
LocalVariableTable:
Start End Slot Name Signature
3 9 1 args Lcom/android/internal/os/SomeArgs;
Exception table:
from to target type
1 8 11 any
9 10 11 any
11 12 11 any
public void complete();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
dup
astore 1
monitorenter
1: aload 0
getfield com.android.internal.os.SomeArgs.mWaitState:I
iconst_1
if_icmpeq 3
2: new java.lang.IllegalStateException
dup
ldc "Not waiting"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: com.android.internal.os.SomeArgs
StackMap stack:
aload 0
iconst_2
putfield com.android.internal.os.SomeArgs.mWaitState:I
4: aload 0
invokevirtual java.lang.Object.notifyAll:()V
5: aload 1
monitorexit
6: goto 9
StackMap locals:
StackMap stack: java.lang.Throwable
7: aload 1
monitorexit
8: athrow
9: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/android/internal/os/SomeArgs;
Exception table:
from to target type
1 6 7 any
7 8 7 any
public void recycle();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.android.internal.os.SomeArgs.mInPool:Z
ifeq 2
1: new java.lang.IllegalStateException
dup
ldc "Already recycled."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield com.android.internal.os.SomeArgs.mWaitState:I
ifeq 4
3: return
4: StackMap locals:
StackMap stack:
getstatic com.android.internal.os.SomeArgs.sPoolLock:Ljava/lang/Object;
dup
astore 1
monitorenter
5: aload 0
invokevirtual com.android.internal.os.SomeArgs.clear:()V
6: getstatic com.android.internal.os.SomeArgs.sPoolSize:I
bipush 10
if_icmpge 11
7: aload 0
getstatic com.android.internal.os.SomeArgs.sPool:Lcom/android/internal/os/SomeArgs;
putfield com.android.internal.os.SomeArgs.mNext:Lcom/android/internal/os/SomeArgs;
8: aload 0
iconst_1
putfield com.android.internal.os.SomeArgs.mInPool:Z
9: aload 0
putstatic com.android.internal.os.SomeArgs.sPool:Lcom/android/internal/os/SomeArgs;
10: getstatic com.android.internal.os.SomeArgs.sPoolSize:I
iconst_1
iadd
putstatic com.android.internal.os.SomeArgs.sPoolSize:I
11: StackMap locals: java.lang.Object
StackMap stack:
aload 1
monitorexit
12: goto 15
StackMap locals:
StackMap stack: java.lang.Throwable
13: aload 1
monitorexit
14: athrow
15: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/android/internal/os/SomeArgs;
Exception table:
from to target type
5 12 13 any
13 14 13 any
private void clear();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
putfield com.android.internal.os.SomeArgs.arg1:Ljava/lang/Object;
1: aload 0
aconst_null
putfield com.android.internal.os.SomeArgs.arg2:Ljava/lang/Object;
2: aload 0
aconst_null
putfield com.android.internal.os.SomeArgs.arg3:Ljava/lang/Object;
3: aload 0
aconst_null
putfield com.android.internal.os.SomeArgs.arg4:Ljava/lang/Object;
4: aload 0
aconst_null
putfield com.android.internal.os.SomeArgs.arg5:Ljava/lang/Object;
5: aload 0
aconst_null
putfield com.android.internal.os.SomeArgs.arg6:Ljava/lang/Object;
6: aload 0
aconst_null
putfield com.android.internal.os.SomeArgs.arg7:Ljava/lang/Object;
7: aload 0
iconst_0
putfield com.android.internal.os.SomeArgs.argi1:I
8: aload 0
iconst_0
putfield com.android.internal.os.SomeArgs.argi2:I
9: aload 0
iconst_0
putfield com.android.internal.os.SomeArgs.argi3:I
10: aload 0
iconst_0
putfield com.android.internal.os.SomeArgs.argi4:I
11: aload 0
iconst_0
putfield com.android.internal.os.SomeArgs.argi5:I
12: aload 0
iconst_0
putfield com.android.internal.os.SomeArgs.argi6:I
13: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/android/internal/os/SomeArgs;
}
SourceFile: "SomeArgs.java"