public final class org.jruby.util.ReferenceReaper
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.jruby.util.ReferenceReaper
super_class: java.lang.Object
{
public final java.lang.ref.ReferenceQueue referenceQueue;
descriptor: Ljava/lang/ref/ReferenceQueue;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
private final java.lang.Thread reaperThread;
descriptor: Ljava/lang/Thread;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.Runnable reaper;
descriptor: Ljava/lang/Runnable;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.lang.ref.ReferenceQueue
dup
invokespecial java.lang.ref.ReferenceQueue.<init>:()V
putfield org.jruby.util.ReferenceReaper.referenceQueue:Ljava/lang/ref/ReferenceQueue;
2: aload 0
new org.jruby.util.ReferenceReaper$1
dup
aload 0
invokespecial org.jruby.util.ReferenceReaper$1.<init>:(Lorg/jruby/util/ReferenceReaper;)V
putfield org.jruby.util.ReferenceReaper.reaper:Ljava/lang/Runnable;
3: aload 0
new java.lang.Thread
dup
aload 0
getfield org.jruby.util.ReferenceReaper.reaper:Ljava/lang/Runnable;
ldc "ReferenceReaper"
invokespecial java.lang.Thread.<init>:(Ljava/lang/Runnable;Ljava/lang/String;)V
putfield org.jruby.util.ReferenceReaper.reaperThread:Ljava/lang/Thread;
4: aload 0
getfield org.jruby.util.ReferenceReaper.reaperThread:Ljava/lang/Thread;
iconst_1
invokevirtual java.lang.Thread.setDaemon:(Z)V
5: aload 0
getfield org.jruby.util.ReferenceReaper.reaperThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.start:()V
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/util/ReferenceReaper;
public static final org.jruby.util.ReferenceReaper getInstance();
descriptor: ()Lorg/jruby/util/ReferenceReaper;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Code:
stack=1, locals=0, args_size=0
0: getstatic org.jruby.util.ReferenceReaper$SingletonHolder.INSTANCE:Lorg/jruby/util/ReferenceReaper;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "ReferenceReaper.java"
NestMembers:
org.jruby.util.ReferenceReaper$1 org.jruby.util.ReferenceReaper$SingletonHolder
InnerClasses:
org.jruby.util.ReferenceReaper$1
private final SingletonHolder = org.jruby.util.ReferenceReaper$SingletonHolder of org.jruby.util.ReferenceReaper