Edit D:\app\Administrator\product\11.2.0\dbhome_1\j2ee\home\lib\oracle\classloader\util\LoaderLeakDetector.class
?? 1? S ? S ? ? ? ? ? ? ? ? ? ? g ? ? ? S ? ? ? S ? S ? i ? l ? S ? ? ? ? ? ? S ? ? ? ? ? S ? ? S ? ? ? ? ? ? ? ? ? ? ? ? ? $ ? ? ? ? ? ? S S S 1 ? S S S $ ? ? $ ? $ ! ? "# N$ %& S' S() S ? *+ ?,- ? ? *./ ?0 $12 S3 45 ?6 ? ?789:;<= InnerClasses> State LEAK_ASSERTION_ENABLED Z DEBUG WAIT_ON_LEAK EOL Ljava/lang/String; LINE WIKI ASSERTION_NOTICE ConstantValue detector ,Loracle/classloader/util/LoaderLeakDetector; closedLoaders Ljava/util/Set; Signature ;Ljava/util/Set<Loracle/classloader/ClosedLoaderReference;>; goal? Goal 0Loracle/classloader/util/GarbageCollection$Goal; isLeakAssertionEnabled ()Z Code LineNumberTable LocalVariableTable failOnLeak <init> ()V this assertNoLeaksIfEnabled 5(Loracle/classloader/util/LoaderLeakDetector$State;)V state 2Loracle/classloader/util/LoaderLeakDetector$State; assertNoLoaderLeaks e Ljava/lang/StackTraceElement; arr$ [Ljava/lang/StackTraceElement; len$ I i$ ref *Loracle/classloader/ClosedLoaderReference; Ljava/util/Iterator; msg Ljava/lang/StringBuilder; dumpFile Ljava/io/File; leaked Ljava/util/List; LocalVariableTypeTable <Ljava/util/List<Loracle/classloader/ClosedLoaderReference;>; waitForEnterKey (Ljava/lang/String;)V c Ljava/io/IOException; nextAction doPeriodicMaintenance (I)V currentMaintenanceTick countLeaks (Z)I forceGC result d countClosedButNotCollected ()I i @Ljava/util/Iterator<Loracle/classloader/ClosedLoaderReference;>; copyClosedButNotCollected (Z)Ljava/util/List; ?(Z)Ljava/util/List<Loracle/classloader/ClosedLoaderReference;>; doCountLeaks count getClosedButNotCollected forceCollection activate isActive deactivate loaderCreated )(Loracle/classloader/PolicyClassLoader;)V loader &Loracle/classloader/PolicyClassLoader; loaderCommitted loaderClosing loaderDestroyed loaderCollected '(Ljava/lang/String;Ljava/lang/String;)V loaderName loaderIdentityHashCode access$000 /(Loracle/classloader/util/LoaderLeakDetector;)I x0 access$100 <clinit> SourceFile LoaderLeakDetector.java p o ? ? fail.on.leak@AB memory.leak.debugCD ? trueEFG ? ? ,oracle/classloader/util/LoaderLeakDetector$1 ?H ~ ? java/util/HashSet z { n oIJK ? ? ?LMN \In Oracle test environment, checking for loader leaks (set -Dfail.on.leak=false to disable).OPQ ? ?RS ? java/lang/StringBuilder ? ? r sTU t s ClassLoader leaks detected (TV ):WXYZ ?[\ (oracle/classloader/ClosedLoaderReference . Creation stack:]^ _`abc /Memory dump (hprof binary, live objects only): u s q ode continue ? ? java/lang/IllegalStateException ? ? No leaked loaders found. Press ENTER to ...fghij ? Proceeding with java/io/IOException Caught while waiting. Moving on... ? ? x y ? ?kl ?mnop Removed enqueued reference: Pqr ?o ? Removed cleared reference: s ? )Removed enqueued reference (isEnqueued): $Remaining closed loader references: Tt java/util/ArrayList ?uvwx ? ? ? ? *oracle/classloader/util/LoaderLeakDetectoryz{|N Loader leak detection activated.}{ "Loader leak detection deactivated. ?~ ? ?p ? ?A? wait.on.leak?? T==================================================================================== *For details on loader leaks, please visit: P http://aseng-wiki.us.oracle.com/asengwiki/display/ASDevJ2EE/ClassLoader+Leaks ESet -Dwait.on.leak when re-running to pause here and attach profiler. java/lang/Object *oracle/classloader/LoaderLifeCycleListener ,oracle/classloader/util/LoaderLeakDetector$2 0oracle/classloader/util/LoaderLeakDetector$State .oracle/classloader/util/GarbageCollection$Goal %oracle/classloader/util/PropertyUtils getProperty 8(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; ,oracle/classloader/util/ClassLoadEnvironment isOracleTestEnvironment java/lang/String equalsIgnoreCase (Ljava/lang/String;)Z /(Loracle/classloader/util/LoaderLeakDetector;)V ;$SwitchMap$oracle$classloader$util$LoaderLeakDetector$State [I ordinal java/util/logging/Level INFO Ljava/util/logging/Level; 'oracle/classloader/util/ClassLoadLogger log .(Ljava/util/logging/Level;Ljava/lang/String;)V java/util/List size append -(Ljava/lang/String;)Ljava/lang/StringBuilder; -(Ljava/lang/Object;)Ljava/lang/StringBuilder; iterator ()Ljava/util/Iterator; java/util/Iterator hasNext next ()Ljava/lang/Object; getCreationStack ()[Ljava/lang/StackTraceElement; )oracle/classloader/util/GarbageCollection getHeapDumpFile ()Ljava/io/File; dumpHeap (Ljava/io/File;Z)Z toString ()Ljava/lang/String; java/lang/System in Ljava/io/InputStream; java/io/InputStream read java/util/Set isEmpty poll ,()Loracle/classloader/ClosedLoaderReference; remove (Ljava/lang/Object;)Z E(Loracle/classloader/util/GarbageCollection$Goal;Ljava/lang/String;)V wasCleared isEnqueued (I)Ljava/lang/StringBuilder; (Ljava/util/Collection;)V java/util/Collections emptyList ()Ljava/util/List; "oracle/classloader/EventDispatcher addListener /(Loracle/classloader/LoaderLifeCycleListener;)V FINE removeListener 3(Loracle/classloader/util/GarbageCollection$Goal;)Z add &(Ljava/lang/String;)Ljava/lang/String; getBooleanProperty (Ljava/lang/String;Z)Z ! S g h n o p o q o r s t s u s v s w J x y z { | } ~ ? ? ? ? _ !? K*? ? ? ? ?*? ? ? B C G K P U ? ? s ? ? ? R *? *? Y*? ? *? Y? ? ? ? X 7 Y Z ? ? y ? ? ? b (? ? $? *? .? *? ? ? ? d h j $ k ' p ? ( ? ? ? ? ? Z 8? ? ? L+?!+? ?? Y ? M,? ? W,? ? W,? ? W,? W,*? W, ? W,? ? W,? ? W+? ! N-? " ? o-? # ? $:,%? W,? W,&? W,? ? W? ':?66? &2:,(? W,? W,? ? W???,? ? W?? )N-? *? ,? ? W,+? W,-? W,? ? W,? ,? W? -? ? ,? .? /? 0? 1Y,? .? 2? 3? ? ? ? $ y z { % ? - ? 5 ? = ? D ? J ? Q ? Y ? a ? | ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?# ?/ ?7 ? ? f ? ? ? ? 2 ? ? ? - ? ? ? * ? ? | ^ ? ? h u ? ? % ? ? ? N ? ? 8 ? ? + ? ? ? + ? ? ? ? ? ? q? ? Y? 45? *? 6? ? .? < ? ? 7? 8<?? ? Y? 49? *? 6? ? .? ? "L? ? Y? 4;? +? <? ? .? ? N Q : ? &