< prev index next >
src/hotspot/share/gc/g1/g1CollectedHeap.cpp
Print this page
rev 47287 : Port 09.17.Thread_SMR_logging_update from JDK9 to JDK10
rev 47289 : eosterlund, stefank CR - refactor code into threadSMR.cpp and threadSMR.hpp
rev 47292 : stefank, coleenp CR - refactor most JavaThreadIterator usage to use JavaThreadIteratorWithHandle.
*** 2628,2645 ****
}
}
size_t G1CollectedHeap::pending_card_num() {
size_t extra_cards = 0;
! {
! ThreadsListHandle tlh;
! JavaThreadIterator jti(tlh.list());
! for (JavaThread *curr = jti.first(); curr != NULL; curr = jti.next()) {
DirtyCardQueue& dcq = curr->dirty_card_queue();
extra_cards += dcq.size();
}
- }
DirtyCardQueueSet& dcqs = JavaThread::dirty_card_queue_set();
size_t buffer_size = dcqs.buffer_size();
size_t buffer_num = dcqs.completed_buffers_num();
return buffer_size * buffer_num + extra_cards;
--- 2628,2641 ----
}
}
size_t G1CollectedHeap::pending_card_num() {
size_t extra_cards = 0;
! for (JavaThreadIteratorWithHandle jtiwh; JavaThread *curr = jtiwh.next(); ) {
DirtyCardQueue& dcq = curr->dirty_card_queue();
extra_cards += dcq.size();
}
DirtyCardQueueSet& dcqs = JavaThread::dirty_card_queue_set();
size_t buffer_size = dcqs.buffer_size();
size_t buffer_num = dcqs.completed_buffers_num();
return buffer_size * buffer_num + extra_cards;
< prev index next >