234
235 hr->rem_set()->clean_strong_code_roots(hr);
236
237 hr->note_self_forwarding_removal_end(during_initial_mark,
238 during_conc_mark,
239 live_bytes);
240 }
241 }
242 return false;
243 }
244 };
245
246 G1ParRemoveSelfForwardPtrsTask::G1ParRemoveSelfForwardPtrsTask() :
247 AbstractGangTask("G1 Remove Self-forwarding Pointers"),
248 _g1h(G1CollectedHeap::heap()),
249 _hrclaimer(_g1h->workers()->active_workers()) { }
250
251 void G1ParRemoveSelfForwardPtrsTask::work(uint worker_id) {
252 RemoveSelfForwardPtrHRClosure rsfp_cl(worker_id, &_hrclaimer);
253
254 _g1h->collection_set_iterate_from(&rsfp_cl, worker_id, _g1h->workers()->active_workers());
255 }
|
234
235 hr->rem_set()->clean_strong_code_roots(hr);
236
237 hr->note_self_forwarding_removal_end(during_initial_mark,
238 during_conc_mark,
239 live_bytes);
240 }
241 }
242 return false;
243 }
244 };
245
246 G1ParRemoveSelfForwardPtrsTask::G1ParRemoveSelfForwardPtrsTask() :
247 AbstractGangTask("G1 Remove Self-forwarding Pointers"),
248 _g1h(G1CollectedHeap::heap()),
249 _hrclaimer(_g1h->workers()->active_workers()) { }
250
251 void G1ParRemoveSelfForwardPtrsTask::work(uint worker_id) {
252 RemoveSelfForwardPtrHRClosure rsfp_cl(worker_id, &_hrclaimer);
253
254 _g1h->collection_set_iterate_from(&rsfp_cl, worker_id);
255 }
|