src/share/vm/gc_implementation/g1/concurrentG1Refine.hpp
Print this page
rev 4973 : imported patch checkpointing.diff
@@ -64,10 +64,12 @@
int _thread_threshold_step;
// We delay the refinement of 'hot' cards using the hot card cache.
G1HotCardCache _hot_card_cache;
+ DirtyCardQueueSet _safe_cards_for_refine;
+ VoidClosure* _flush_transfer_closure;
// Reset the threshold step value based of the current zone boundaries.
void reset_threshold_step();
public:
@@ -104,8 +106,13 @@
int worker_thread_num() const { return _n_worker_threads; }
int thread_threshold_step() const { return _thread_threshold_step; }
G1HotCardCache* hot_card_cache() { return &_hot_card_cache; }
+
+ void set_card_refinement_closure(CardTableEntryClosure* cl);
+ void set_flush_transfer_closure(VoidClosure* cl) { _flush_transfer_closure = cl; }
+ void flush_cards_in_buffers();
+ DirtyCardQueueSet& cards_ready_for_refinement() { return _safe_cards_for_refine; }
};
#endif // SHARE_VM_GC_IMPLEMENTATION_G1_CONCURRENTG1REFINE_HPP