< prev index next >

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

Print this page
@@ -34,11 +34,12 @@
  #include "utilities/globalDefinitions.hpp"
  
  class ZRootsIteratorClosure;
  
  typedef OopStorage::ParState<true /* concurrent */, false /* is_const */> ZOopStorageIterator;
- typedef OopStorageSetStrongParState<true /* concurrent */, false /* is_const */> ZOopStorageSetIterator;
+ typedef OopStorageSetStrongParState<true /* concurrent */, false /* is_const */> ZOopStorageSetStrongIterator;
+ typedef OopStorageSetWeakParState<true /* concurrent */, false /* is_const */> ZOopStorageSetWeakIterator;
  
  template <typename T, void (T::*F)(ZRootsIteratorClosure*)>
  class ZSerialOopsDo {
  private:
    T* const      _iter;

@@ -134,12 +135,12 @@
    void oops_do(ZRootsIteratorClosure* cl);
  };
  
  class ZConcurrentRootsIterator {
  private:
-   ZOopStorageSetIterator _oop_storage_set_iter;
-   const int              _cld_claim;
+   ZOopStorageSetStrongIterator _oop_storage_set_iter;
+   const int                    _cld_claim;
  
    void do_oop_storage_set(ZRootsIteratorClosure* cl);
    void do_class_loader_data_graph(ZRootsIteratorClosure* cl);
  
    ZParallelOopsDo<ZConcurrentRootsIterator, &ZConcurrentRootsIterator::do_oop_storage_set>         _oop_storage_set;

@@ -186,28 +187,20 @@
    void oops_do(ZRootsIteratorClosure* cl);
  };
  
  class ZConcurrentWeakRootsIterator {
  private:
-   ZOopStorageIterator _vm_weak_handles_iter;
-   ZOopStorageIterator _jni_weak_handles_iter;
-   ZOopStorageIterator _string_table_iter;
-   ZOopStorageIterator _resolved_method_table_iter;
+   ZOopStorageSetWeakIterator _oop_storage_set_iter;
  
-   void do_vm_weak_handles(ZRootsIteratorClosure* cl);
-   void do_jni_weak_handles(ZRootsIteratorClosure* cl);
-   void do_string_table(ZRootsIteratorClosure* cl);
-   void do_resolved_method_table(ZRootsIteratorClosure* cl);
+   void do_oop_storage_set(ZRootsIteratorClosure* cl);
  
-   ZParallelOopsDo<ZConcurrentWeakRootsIterator, &ZConcurrentWeakRootsIterator::do_vm_weak_handles>       _vm_weak_handles;
-   ZParallelOopsDo<ZConcurrentWeakRootsIterator, &ZConcurrentWeakRootsIterator::do_jni_weak_handles>      _jni_weak_handles;
-   ZParallelOopsDo<ZConcurrentWeakRootsIterator, &ZConcurrentWeakRootsIterator::do_string_table>          _string_table;
-   ZParallelOopsDo<ZConcurrentWeakRootsIterator, &ZConcurrentWeakRootsIterator::do_resolved_method_table> _resolved_method_table;
+   ZParallelOopsDo<ZConcurrentWeakRootsIterator, &ZConcurrentWeakRootsIterator::do_oop_storage_set> _oop_storage_set;
  
  public:
    ZConcurrentWeakRootsIterator();
-   ~ZConcurrentWeakRootsIterator();
  
    void oops_do(ZRootsIteratorClosure* cl);
+ 
+   void notify();
  };
  
  #endif // SHARE_GC_Z_ZROOTSITERATOR_HPP
< prev index next >