< prev index next >

src/hotspot/share/gc/z/zRootsIterator.hpp

Print this page

        

*** 109,121 **** void oops_do(ZRootsIteratorClosure* cl, bool visit_jvmti_weak_export = false); }; class ZConcurrentRootsIterator { private: ! ZOopStorageIterator _jni_handles_iter; ! ZOopStorageIterator _vm_handles_iter; ! int _cld_claim; void do_jni_handles(ZRootsIteratorClosure* cl); void do_vm_handles(ZRootsIteratorClosure* cl); void do_class_loader_data_graph(ZRootsIteratorClosure* cl); --- 109,121 ---- void oops_do(ZRootsIteratorClosure* cl, bool visit_jvmti_weak_export = false); }; class ZConcurrentRootsIterator { private: ! ZOopStorageIterator _jni_handles_iter; ! ZOopStorageIterator _vm_handles_iter; ! const int _cld_claim; void do_jni_handles(ZRootsIteratorClosure* cl); void do_vm_handles(ZRootsIteratorClosure* cl); void do_class_loader_data_graph(ZRootsIteratorClosure* cl);
*** 128,144 **** ~ZConcurrentRootsIterator(); void oops_do(ZRootsIteratorClosure* cl); }; class ZWeakRootsIterator { private: void do_jvmti_weak_export(BoolObjectClosure* is_alive, ZRootsIteratorClosure* cl); void do_jfr_weak(BoolObjectClosure* is_alive, ZRootsIteratorClosure* cl); ! ZSerialWeakOopsDo<ZWeakRootsIterator, &ZWeakRootsIterator::do_jvmti_weak_export> _jvmti_weak_export; ! ZSerialWeakOopsDo<ZWeakRootsIterator, &ZWeakRootsIterator::do_jfr_weak> _jfr_weak; public: ZWeakRootsIterator(); ~ZWeakRootsIterator(); --- 128,162 ---- ~ZConcurrentRootsIterator(); void oops_do(ZRootsIteratorClosure* cl); }; + class ZConcurrentRootsIteratorClaimStrong : public ZConcurrentRootsIterator { + public: + ZConcurrentRootsIteratorClaimStrong() : + ZConcurrentRootsIterator(ClassLoaderData::_claim_strong) {} + }; + + class ZConcurrentRootsIteratorClaimOther : public ZConcurrentRootsIterator { + public: + ZConcurrentRootsIteratorClaimOther() : + ZConcurrentRootsIterator(ClassLoaderData::_claim_other) {} + }; + + class ZConcurrentRootsIteratorClaimNone : public ZConcurrentRootsIterator { + public: + ZConcurrentRootsIteratorClaimNone() : + ZConcurrentRootsIterator(ClassLoaderData::_claim_none) {} + }; + class ZWeakRootsIterator { private: void do_jvmti_weak_export(BoolObjectClosure* is_alive, ZRootsIteratorClosure* cl); void do_jfr_weak(BoolObjectClosure* is_alive, ZRootsIteratorClosure* cl); ! ZSerialWeakOopsDo<ZWeakRootsIterator, &ZWeakRootsIterator::do_jvmti_weak_export> _jvmti_weak_export; ! ZSerialWeakOopsDo<ZWeakRootsIterator, &ZWeakRootsIterator::do_jfr_weak> _jfr_weak; public: ZWeakRootsIterator(); ~ZWeakRootsIterator();
< prev index next >