public class org.ehcache.impl.internal.store.disk.DiskWriteThreadPool implements org.terracotta.offheapstore.util.Factory<java.util.concurrent.ExecutorService>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.ehcache.impl.internal.store.disk.DiskWriteThreadPool
super_class: java.lang.Object
{
private final java.util.List<java.util.concurrent.ExecutorService> writers;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljava/util/concurrent/ExecutorService;>;
private final org.ehcache.core.spi.service.ExecutionService executionService;
descriptor: Lorg/ehcache/core/spi/service/ExecutionService;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String poolAlias;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int threads;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int index;
descriptor: I
flags: (0x0002) ACC_PRIVATE
public void <init>(org.ehcache.core.spi.service.ExecutionService, java.lang.String, int);
descriptor: (Lorg/ehcache/core/spi/service/ExecutionService;Ljava/lang/String;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.concurrent.CopyOnWriteArrayList
dup
invokespecial java.util.concurrent.CopyOnWriteArrayList.<init>:()V
putfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.writers:Ljava/util/List;
2: aload 0
iconst_0
putfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.index:I
3: aload 0
aload 1
putfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.executionService:Lorg/ehcache/core/spi/service/ExecutionService;
4: aload 0
aload 2
putfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.poolAlias:Ljava/lang/String;
5: aload 0
iload 3
putfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.threads:I
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/ehcache/impl/internal/store/disk/DiskWriteThreadPool;
0 7 1 executionService Lorg/ehcache/core/spi/service/ExecutionService;
0 7 2 poolAlias Ljava/lang/String;
0 7 3 threads I
MethodParameters:
Name Flags
executionService
poolAlias
threads
public java.util.concurrent.ExecutorService newInstance();
descriptor: ()Ljava/util/concurrent/ExecutorService;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.writers:Ljava/util/List;
invokeinterface java.util.List.size:()I
aload 0
getfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.threads:I
if_icmpge 4
1: aload 0
getfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.executionService:Lorg/ehcache/core/spi/service/ExecutionService;
aload 0
getfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.poolAlias:Ljava/lang/String;
new java.util.concurrent.LinkedBlockingQueue
dup
invokespecial java.util.concurrent.LinkedBlockingQueue.<init>:()V
invokeinterface org.ehcache.core.spi.service.ExecutionService.getOrderedExecutor:(Ljava/lang/String;Ljava/util/concurrent/BlockingQueue;)Ljava/util/concurrent/ExecutorService;
astore 1
start local 1 2: aload 0
getfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.writers:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: goto 7
end local 1 4: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.writers:Ljava/util/List;
aload 0
dup
getfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.index:I
dup_x1
iconst_1
iadd
putfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.index:I
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.util.concurrent.ExecutorService
astore 1
start local 1 5: aload 0
getfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.index:I
aload 0
getfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.writers:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmpne 7
6: aload 0
iconst_0
putfield org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.index:I
7: StackMap locals: java.util.concurrent.ExecutorService
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/ehcache/impl/internal/store/disk/DiskWriteThreadPool;
2 4 1 writer Ljava/util/concurrent/ExecutorService;
5 8 1 writer Ljava/util/concurrent/ExecutorService;
public java.lang.Object newInstance();
descriptor: ()Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual org.ehcache.impl.internal.store.disk.DiskWriteThreadPool.newInstance:()Ljava/util/concurrent/ExecutorService;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Lorg/terracotta/offheapstore/util/Factory<Ljava/util/concurrent/ExecutorService;>;
SourceFile: "DiskWriteThreadPool.java"