< prev index next >

src/hotspot/share/gc/g1/g1OopClosures.hpp

Print this page
rev 52676 : imported patch AMGC-impl
rev 52677 : imported patch AMGC-tsch-rev1

*** 81,90 **** --- 81,100 ---- template <class T> void do_oop_work(T* p); virtual void do_oop(oop* p) { do_oop_work(p); } virtual void do_oop(narrowOop* p) { do_oop_work(p); } }; + // Used during Optional RS scanning to make sure we trim the queues in a timely manner. + class G1ScanRSForOptionalClosure : public OopClosure { + G1ScanObjsDuringScanRSClosure* _scan_cl; + public: + G1ScanRSForOptionalClosure(G1ScanObjsDuringScanRSClosure* cl) : _scan_cl(cl) { } + + template <class T> void do_oop_work(T* p); + virtual void do_oop(oop* p) { do_oop_work(p); } + virtual void do_oop(narrowOop* p) { do_oop_work(p); } + }; // This closure is applied to the fields of the objects that have just been copied during evacuation. class G1ScanEvacuatedObjClosure : public G1ScanClosureBase { friend class G1ScanInYoungSetter;
< prev index next >