
META-INF.modules.java.desktop.classes.sun.java2d.Disposer.class Maven / Gradle / Ivy
???? @
java/lang/Object ()V
sun/java2d/Disposer disposerInstance Lsun/java2d/Disposer; sun/java2d/DefaultDisposerRecord
(JJ)V
add 0(Ljava/lang/Object;Lsun/java2d/DisposerRecord;)V sun/java2d/DisposerTarget getDisposerReferent ()Ljava/lang/Object; refType I ! java/lang/ref/PhantomReference # $ % queue Ljava/lang/ref/ReferenceQueue;
' ( 3(Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V * java/lang/ref/WeakReference
) ' - . / records Ljava/util/Hashtable;
1 2 3 4 5 java/util/Hashtable put 8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
7 8 9 : ; java/lang/ref/ReferenceQueue remove ()Ljava/lang/ref/Reference;
= > ? @ java/lang/ref/Reference clear
1 B : C &(Ljava/lang/Object;)Ljava/lang/Object; E sun/java2d/DisposerRecord
G H I safeDispose (Lsun/java2d/DisposerRecord;)V
K L clearDeferredRecords N java/lang/Exception P Q R S T java/lang/System out Ljava/io/PrintStream; V #Exception while removing reference.
X Y Z [ \ java/io/PrintStream println (Ljava/lang/String;)V D ^ _ dispose a 'Exception while disposing deferred rec. c d e deferredRecords ,Ljava/util/concurrent/ConcurrentLinkedDeque;
g h i j k *java/util/concurrent/ConcurrentLinkedDeque isEmpty ()Z
g m n pollFirst p q r pollingQueue Z
7 t u ; poll w "sun/java2d/Disposer$PollDisposable
g y z { offerLast (Ljava/lang/Object;)Z } Java2D Disposer
? ? ? ? sun/awt/util/ThreadGroupUtils getRootThreadGroup ()Ljava/lang/ThreadGroup; ? java/lang/Thread
? ? ? B(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;JZ)V
? ? ? ? setContextClassLoader (Ljava/lang/ClassLoader;)V
? ? ? ? setDaemon (Z)V
? ? ? ? setPriority (I)V
? ? ? start
7
1 ? sun/java2d/Disposer$1
?
? ? ? ? ? java/security/AccessController doPrivileged 4(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
? ? initIDs ? %sun/security/action/GetPropertyAction ? sun.java2d.reftype
? ? \ ? java/lang/String ? weak
? ? ? { equals P ? ? T err ? Using WEAK refs ? Using PHANTOM refs
? ? ? run "()Ljava/security/PrivilegedAction;
g ? java/lang/Runnable Signature 2Ljava/lang/ref/ReferenceQueue; _Ljava/util/Hashtable;Lsun/java2d/DisposerRecord;>; WEAK
ConstantValue PHANTOM ILjava/util/concurrent/ConcurrentLinkedDeque; Code LineNumberTable LocalVariableTable this addRecord (Ljava/lang/Object;JJ)V target Ljava/lang/Object;
disposeMethod J pData rec Lsun/java2d/DisposerRecord; ref Ljava/lang/ref/Reference; LocalVariableTypeTable -Ljava/lang/ref/Reference;
StackMapTable obj e Ljava/lang/Exception; Ljava/lang/ref/Reference<*>;
pollRemove freed deferred ? java/lang/Throwable addReference 7(Ljava/lang/ref/Reference;Lsun/java2d/DisposerRecord;)V K(Ljava/lang/ref/Reference;Lsun/java2d/DisposerRecord;)V addObjectRecord getQueue ()Ljava/lang/ref/ReferenceQueue; 4()Ljava/lang/ref/ReferenceQueue; lambda$static$0 ()Ljava/lang/Void; name Ljava/lang/String; rootTG Ljava/lang/ThreadGroup; t Ljava/lang/Thread; type
SourceFile
Disposer.java NestMembers BootstrapMethods ?
? ? ? "java/lang/invoke/LambdaMetafactory metafactory ?(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
? ? ? InnerClasses PollDisposable
%java/lang/invoke/MethodHandles$Lookup java/lang/invoke/MethodHandles Lookup ! ? $ % ? ? . / ? ?
? ? ? ? ? ?
d e ? ? I q r ? / *? ? ? 6 ? ? ? ? ? S ? *?
Y!? ? ? ?
k m ? ? ? ? ? ? ? ? ? A ? *+? ? ?
v w ? ? ? ? ? ? ? =+? ?
+? ? L? ? ? Y+? "? &N? ? )Y+? "? +N? ,-,? 0W? ? ? ? ? ? ' ? 3 ? <