public class com.codahale.metrics.InstrumentedThreadFactory implements java.util.concurrent.ThreadFactory
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.codahale.metrics.InstrumentedThreadFactory
super_class: java.lang.Object
{
private static final java.util.concurrent.atomic.AtomicLong NAME_COUNTER;
descriptor: Ljava/util/concurrent/atomic/AtomicLong;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.util.concurrent.ThreadFactory delegate;
descriptor: Ljava/util/concurrent/ThreadFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.codahale.metrics.Meter created;
descriptor: Lcom/codahale/metrics/Meter;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.codahale.metrics.Counter running;
descriptor: Lcom/codahale/metrics/Counter;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.codahale.metrics.Meter terminated;
descriptor: Lcom/codahale/metrics/Meter;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.util.concurrent.atomic.AtomicLong
dup
invokespecial java.util.concurrent.atomic.AtomicLong.<init>:()V
putstatic com.codahale.metrics.InstrumentedThreadFactory.NAME_COUNTER:Ljava/util/concurrent/atomic/AtomicLong;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(java.util.concurrent.ThreadFactory, com.codahale.metrics.MetricRegistry);
descriptor: (Ljava/util/concurrent/ThreadFactory;Lcom/codahale/metrics/MetricRegistry;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
new java.lang.StringBuilder
dup
ldc "instrumented-thread-delegate-"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic com.codahale.metrics.InstrumentedThreadFactory.NAME_COUNTER:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.incrementAndGet:()J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial com.codahale.metrics.InstrumentedThreadFactory.<init>:(Ljava/util/concurrent/ThreadFactory;Lcom/codahale/metrics/MetricRegistry;Ljava/lang/String;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/codahale/metrics/InstrumentedThreadFactory;
0 2 1 delegate Ljava/util/concurrent/ThreadFactory;
0 2 2 registry Lcom/codahale/metrics/MetricRegistry;
MethodParameters:
Name Flags
delegate
registry
public void <init>(java.util.concurrent.ThreadFactory, com.codahale.metrics.MetricRegistry, java.lang.String);
descriptor: (Ljava/util/concurrent/ThreadFactory;Lcom/codahale/metrics/MetricRegistry;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, 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
aload 1
putfield com.codahale.metrics.InstrumentedThreadFactory.delegate:Ljava/util/concurrent/ThreadFactory;
2: aload 0
aload 2
aload 3
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "created"
aastore
invokestatic com.codahale.metrics.MetricRegistry.name:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
invokevirtual com.codahale.metrics.MetricRegistry.meter:(Ljava/lang/String;)Lcom/codahale/metrics/Meter;
putfield com.codahale.metrics.InstrumentedThreadFactory.created:Lcom/codahale/metrics/Meter;
3: aload 0
aload 2
aload 3
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "running"
aastore
invokestatic com.codahale.metrics.MetricRegistry.name:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
invokevirtual com.codahale.metrics.MetricRegistry.counter:(Ljava/lang/String;)Lcom/codahale/metrics/Counter;
putfield com.codahale.metrics.InstrumentedThreadFactory.running:Lcom/codahale/metrics/Counter;
4: aload 0
aload 2
aload 3
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "terminated"
aastore
invokestatic com.codahale.metrics.MetricRegistry.name:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
invokevirtual com.codahale.metrics.MetricRegistry.meter:(Ljava/lang/String;)Lcom/codahale/metrics/Meter;
putfield com.codahale.metrics.InstrumentedThreadFactory.terminated:Lcom/codahale/metrics/Meter;
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/codahale/metrics/InstrumentedThreadFactory;
0 6 1 delegate Ljava/util/concurrent/ThreadFactory;
0 6 2 registry Lcom/codahale/metrics/MetricRegistry;
0 6 3 name Ljava/lang/String;
MethodParameters:
Name Flags
delegate
registry
name
public java.lang.Thread newThread(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)Ljava/lang/Thread;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: new com.codahale.metrics.InstrumentedThreadFactory$InstrumentedRunnable
dup
aload 0
aload 1
invokespecial com.codahale.metrics.InstrumentedThreadFactory$InstrumentedRunnable.<init>:(Lcom/codahale/metrics/InstrumentedThreadFactory;Ljava/lang/Runnable;)V
astore 2
start local 2 1: aload 0
getfield com.codahale.metrics.InstrumentedThreadFactory.delegate:Ljava/util/concurrent/ThreadFactory;
aload 2
invokeinterface java.util.concurrent.ThreadFactory.newThread:(Ljava/lang/Runnable;)Ljava/lang/Thread;
astore 3
start local 3 2: aload 0
getfield com.codahale.metrics.InstrumentedThreadFactory.created:Lcom/codahale/metrics/Meter;
invokevirtual com.codahale.metrics.Meter.mark:()V
3: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/codahale/metrics/InstrumentedThreadFactory;
0 4 1 runnable Ljava/lang/Runnable;
1 4 2 wrappedRunnable Ljava/lang/Runnable;
2 4 3 thread Ljava/lang/Thread;
MethodParameters:
Name Flags
runnable
}
SourceFile: "InstrumentedThreadFactory.java"
NestMembers:
com.codahale.metrics.InstrumentedThreadFactory$InstrumentedRunnable
InnerClasses:
private InstrumentedRunnable = com.codahale.metrics.InstrumentedThreadFactory$InstrumentedRunnable of com.codahale.metrics.InstrumentedThreadFactory