equal
deleted
inserted
replaced
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) { |