1529 _ref_processor_cm(NULL), |
1529 _ref_processor_cm(NULL), |
1530 _is_alive_closure_cm(this), |
1530 _is_alive_closure_cm(this), |
1531 _is_subject_to_discovery_cm(this), |
1531 _is_subject_to_discovery_cm(this), |
1532 _in_cset_fast_test() { |
1532 _in_cset_fast_test() { |
1533 |
1533 |
1534 _workers = new WorkGang("GC Thread", ParallelGCThreads, |
|
1535 true /* are_GC_task_threads */, |
|
1536 false /* are_ConcurrentGC_threads */); |
|
1537 _workers->initialize_workers(); |
|
1538 _verifier = new G1HeapVerifier(this); |
1534 _verifier = new G1HeapVerifier(this); |
1539 |
1535 |
1540 _allocator = new G1Allocator(this); |
1536 _allocator = new G1Allocator(this); |
1541 |
1537 |
1542 _heap_sizing_policy = G1HeapSizingPolicy::create(this, _g1_policy->analytics()); |
1538 _heap_sizing_policy = G1HeapSizingPolicy::create(this, _g1_policy->analytics()); |
1764 size_t granularity = HeapRegion::GrainBytes; |
1760 size_t granularity = HeapRegion::GrainBytes; |
1765 |
1761 |
1766 _in_cset_fast_test.initialize(start, end, granularity); |
1762 _in_cset_fast_test.initialize(start, end, granularity); |
1767 _humongous_reclaim_candidates.initialize(start, end, granularity); |
1763 _humongous_reclaim_candidates.initialize(start, end, granularity); |
1768 } |
1764 } |
|
1765 |
|
1766 _workers = new WorkGang("GC Thread", ParallelGCThreads, |
|
1767 true /* are_GC_task_threads */, |
|
1768 false /* are_ConcurrentGC_threads */); |
|
1769 if (_workers == NULL) { |
|
1770 return JNI_ENOMEM; |
|
1771 } |
|
1772 _workers->initialize_workers(); |
1769 |
1773 |
1770 // Create the G1ConcurrentMark data structure and thread. |
1774 // Create the G1ConcurrentMark data structure and thread. |
1771 // (Must do this late, so that "max_regions" is defined.) |
1775 // (Must do this late, so that "max_regions" is defined.) |
1772 _cm = new G1ConcurrentMark(this, prev_bitmap_storage, next_bitmap_storage); |
1776 _cm = new G1ConcurrentMark(this, prev_bitmap_storage, next_bitmap_storage); |
1773 if (_cm == NULL || !_cm->completed_initialization()) { |
1777 if (_cm == NULL || !_cm->completed_initialization()) { |