src/hotspot/share/gc/g1/g1ConcurrentMark.cpp
changeset 52905 bec57b4a6d69
parent 52904 d2f118d3f8e7
child 53348 331ba84b1e36
equal deleted inserted replaced
52904:d2f118d3f8e7 52905:bec57b4a6d69
   376   _max_num_tasks(ParallelGCThreads),
   376   _max_num_tasks(ParallelGCThreads),
   377   // _num_active_tasks set in set_non_marking_state()
   377   // _num_active_tasks set in set_non_marking_state()
   378   // _tasks set inside the constructor
   378   // _tasks set inside the constructor
   379 
   379 
   380   _task_queues(new G1CMTaskQueueSet((int) _max_num_tasks)),
   380   _task_queues(new G1CMTaskQueueSet((int) _max_num_tasks)),
   381   _terminator(ParallelTaskTerminator((int) _max_num_tasks, _task_queues)),
   381   _terminator((int) _max_num_tasks, _task_queues),
   382 
   382 
   383   _first_overflow_barrier_sync(),
   383   _first_overflow_barrier_sync(),
   384   _second_overflow_barrier_sync(),
   384   _second_overflow_barrier_sync(),
   385 
   385 
   386   _has_overflown(false),
   386   _has_overflown(false),
   586   assert(active_tasks <= _max_num_tasks, "we should not have more");
   586   assert(active_tasks <= _max_num_tasks, "we should not have more");
   587 
   587 
   588   _num_active_tasks = active_tasks;
   588   _num_active_tasks = active_tasks;
   589   // Need to update the three data structures below according to the
   589   // Need to update the three data structures below according to the
   590   // number of active threads for this phase.
   590   // number of active threads for this phase.
   591   _terminator = ParallelTaskTerminator((int) active_tasks, _task_queues);
   591   _terminator = TaskTerminator((int) active_tasks, _task_queues);
   592   _first_overflow_barrier_sync.set_n_workers((int) active_tasks);
   592   _first_overflow_barrier_sync.set_n_workers((int) active_tasks);
   593   _second_overflow_barrier_sync.set_n_workers((int) active_tasks);
   593   _second_overflow_barrier_sync.set_n_workers((int) active_tasks);
   594 }
   594 }
   595 
   595 
   596 void G1ConcurrentMark::set_concurrency_and_phase(uint active_tasks, bool concurrent) {
   596 void G1ConcurrentMark::set_concurrency_and_phase(uint active_tasks, bool concurrent) {