File tree Expand file tree Collapse file tree 1 file changed +3
-5
lines changed Expand file tree Collapse file tree 1 file changed +3
-5
lines changed Original file line number Diff line number Diff line change @@ -88,13 +88,12 @@ private CleanerRef add(final CleanerRef toAdd) {
8888    }
8989
9090    // Remove by node reference 
91-     private  void  remove (final  CleanerRef  node ) {
92-         uncleaned .remove (node );
91+     private  boolean  remove (final  CleanerRef  node ) {
92+         return   uncleaned .remove (node );
9393    }
9494
9595    private  static  class  CleanerRef  extends  PhantomReference <Object > implements  Cleanable  {
9696        private  volatile  Runnable  cleanupTask ;
97-         private  AtomicBoolean  cleaned  = new  AtomicBoolean (false );
9897
9998        CleanerRef (Object  referent , ReferenceQueue <? super  Object > q , Runnable  cleanupTask ) {
10099            super (referent , q );
@@ -103,8 +102,7 @@ private static class CleanerRef extends PhantomReference<Object> implements Clea
103102
104103        @ Override 
105104        public  void  clean () {
106-             if  (cleaned .compareAndSet (false , true )) {
107-                 INSTANCE .remove (this );
105+             if  (INSTANCE .remove (this )) {
108106                cleanupTask .run ();
109107            }
110108        }
 
 
   
 
     
   
   
          
    
    
     
    
      
     
     
    You can’t perform that action at this time.
  
 
    
  
    
      
        
     
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments