< prev index next >

src/hotspot/share/gc/g1/g1CollectedHeap.cpp

Print this page
rev 52909 : imported patch delay_g1

*** 1527,1540 **** _ref_processor_cm(NULL), _is_alive_closure_cm(this), _is_subject_to_discovery_cm(this), _in_cset_fast_test() { - _workers = new WorkGang("GC Thread", ParallelGCThreads, - true /* are_GC_task_threads */, - false /* are_ConcurrentGC_threads */); - _workers->initialize_workers(); _verifier = new G1HeapVerifier(this); _allocator = new G1Allocator(this); _heap_sizing_policy = G1HeapSizingPolicy::create(this, _g1_policy->analytics()); --- 1527,1536 ----
*** 1763,1772 **** --- 1759,1776 ---- _in_cset_fast_test.initialize(start, end, granularity); _humongous_reclaim_candidates.initialize(start, end, granularity); } + _workers = new WorkGang("GC Thread", ParallelGCThreads, + true /* are_GC_task_threads */, + false /* are_ConcurrentGC_threads */); + if (_workers == NULL) { + return JNI_ENOMEM; + } + _workers->initialize_workers(); + // Create the G1ConcurrentMark data structure and thread. // (Must do this late, so that "max_regions" is defined.) _cm = new G1ConcurrentMark(this, prev_bitmap_storage, next_bitmap_storage); if (_cm == NULL || !_cm->completed_initialization()) { vm_shutdown_during_initialization("Could not create/initialize G1ConcurrentMark");
< prev index next >