147 class ZConcurrentWeakRootsIterator { |
147 class ZConcurrentWeakRootsIterator { |
148 private: |
148 private: |
149 ZOopStorageIterator _vm_weak_handles_iter; |
149 ZOopStorageIterator _vm_weak_handles_iter; |
150 ZOopStorageIterator _jni_weak_handles_iter; |
150 ZOopStorageIterator _jni_weak_handles_iter; |
151 ZOopStorageIterator _string_table_iter; |
151 ZOopStorageIterator _string_table_iter; |
|
152 ZOopStorageIterator _resolved_method_table_iter; |
152 |
153 |
153 void do_vm_weak_handles(ZRootsIteratorClosure* cl); |
154 void do_vm_weak_handles(ZRootsIteratorClosure* cl); |
154 void do_jni_weak_handles(ZRootsIteratorClosure* cl); |
155 void do_jni_weak_handles(ZRootsIteratorClosure* cl); |
155 void do_string_table(ZRootsIteratorClosure* cl); |
156 void do_string_table(ZRootsIteratorClosure* cl); |
|
157 void do_resolved_method_table(ZRootsIteratorClosure* cl); |
156 |
158 |
157 ZParallelOopsDo<ZConcurrentWeakRootsIterator, &ZConcurrentWeakRootsIterator::do_vm_weak_handles> _vm_weak_handles; |
159 ZParallelOopsDo<ZConcurrentWeakRootsIterator, &ZConcurrentWeakRootsIterator::do_vm_weak_handles> _vm_weak_handles; |
158 ZParallelOopsDo<ZConcurrentWeakRootsIterator, &ZConcurrentWeakRootsIterator::do_jni_weak_handles> _jni_weak_handles; |
160 ZParallelOopsDo<ZConcurrentWeakRootsIterator, &ZConcurrentWeakRootsIterator::do_jni_weak_handles> _jni_weak_handles; |
159 ZParallelOopsDo<ZConcurrentWeakRootsIterator, &ZConcurrentWeakRootsIterator::do_string_table> _string_table; |
161 ZParallelOopsDo<ZConcurrentWeakRootsIterator, &ZConcurrentWeakRootsIterator::do_string_table> _string_table; |
|
162 ZParallelOopsDo<ZConcurrentWeakRootsIterator, &ZConcurrentWeakRootsIterator::do_resolved_method_table> _resolved_method_table; |
160 |
163 |
161 public: |
164 public: |
162 ZConcurrentWeakRootsIterator(); |
165 ZConcurrentWeakRootsIterator(); |
163 ~ZConcurrentWeakRootsIterator(); |
166 ~ZConcurrentWeakRootsIterator(); |
164 |
167 |