18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #ifndef SHARE_GC_G1_G1SATBMARKQUEUESET_HPP
26 #define SHARE_GC_G1_G1SATBMARKQUEUESET_HPP
27
28 #include "gc/shared/satbMarkQueue.hpp"
29
30 class G1CollectedHeap;
31 class Monitor;
32 class Thread;
33
34 class G1SATBMarkQueueSet : public SATBMarkQueueSet {
35 G1CollectedHeap* _g1h;
36
37 public:
38 G1SATBMarkQueueSet();
39
40 void initialize(G1CollectedHeap* g1h,
41 BufferNode::Allocator* allocator,
42 size_t process_completed_buffers_threshold,
43 uint buffer_enqueue_threshold_percentage);
44
45 static void handle_zero_index_for_thread(Thread* t);
46 virtual SATBMarkQueue& satb_queue_for_thread(Thread* const t) const;
47 virtual void filter(SATBMarkQueue* queue);
48 };
49
50 #endif // SHARE_GC_G1_G1SATBMARKQUEUESET_HPP
|
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #ifndef SHARE_GC_G1_G1SATBMARKQUEUESET_HPP
26 #define SHARE_GC_G1_G1SATBMARKQUEUESET_HPP
27
28 #include "gc/shared/satbMarkQueue.hpp"
29
30 class G1CollectedHeap;
31 class Monitor;
32 class Thread;
33
34 class G1SATBMarkQueueSet : public SATBMarkQueueSet {
35 G1CollectedHeap* _g1h;
36
37 public:
38 G1SATBMarkQueueSet(BufferNode::Allocator* allocator);
39
40 static void handle_zero_index_for_thread(Thread* t);
41 virtual SATBMarkQueue& satb_queue_for_thread(Thread* const t) const;
42 virtual void filter(SATBMarkQueue* queue);
43 };
44
45 #endif // SHARE_GC_G1_G1SATBMARKQUEUESET_HPP
|