< prev index next >

src/hotspot/share/gc/shared/gcBehaviours.cpp

Print this page




  47     if (obj == NULL) {
  48       return;
  49     }
  50     if (!_cl->do_object_b(obj)) {
  51       _is_unloading = true;
  52     }
  53   }
  54 
  55   virtual void do_oop(narrowOop* p) {
  56     ShouldNotReachHere();
  57   }
  58 
  59   bool is_unloading() const {
  60     return _is_unloading;
  61   }
  62 };
  63 
  64 bool ClosureIsUnloadingBehaviour::is_unloading(CompiledMethod* cm) const {
  65   if (cm->is_nmethod()) {
  66     IsCompiledMethodUnloadingOopClosure cl(_cl);
  67     static_cast<nmethod*>(cm)->oops_do(&cl, true /* allow_dead */);
  68     return cl.is_unloading();
  69   } else {
  70     return false;
  71   }
  72 }


  47     if (obj == NULL) {
  48       return;
  49     }
  50     if (!_cl->do_object_b(obj)) {
  51       _is_unloading = true;
  52     }
  53   }
  54 
  55   virtual void do_oop(narrowOop* p) {
  56     ShouldNotReachHere();
  57   }
  58 
  59   bool is_unloading() const {
  60     return _is_unloading;
  61   }
  62 };
  63 
  64 bool ClosureIsUnloadingBehaviour::is_unloading(CompiledMethod* cm) const {
  65   if (cm->is_nmethod()) {
  66     IsCompiledMethodUnloadingOopClosure cl(_cl);
  67     static_cast<nmethod*>(cm)->oops_do(&cl);
  68     return cl.is_unloading();
  69   } else {
  70     return false;
  71   }
  72 }
< prev index next >