equal
deleted
inserted
replaced
131 void WorkGang::run_task(AbstractGangTask* task) { |
131 void WorkGang::run_task(AbstractGangTask* task) { |
132 run_task(task, total_workers()); |
132 run_task(task, total_workers()); |
133 } |
133 } |
134 |
134 |
135 void WorkGang::run_task(AbstractGangTask* task, uint no_of_parallel_workers) { |
135 void WorkGang::run_task(AbstractGangTask* task, uint no_of_parallel_workers) { |
136 task->set_for_termination(no_of_parallel_workers); |
|
137 |
|
138 // This thread is executed by the VM thread which does not block |
136 // This thread is executed by the VM thread which does not block |
139 // on ordinary MutexLocker's. |
137 // on ordinary MutexLocker's. |
140 MutexLockerEx ml(monitor(), Mutex::_no_safepoint_check_flag); |
138 MutexLockerEx ml(monitor(), Mutex::_no_safepoint_check_flag); |
141 if (TraceWorkGang) { |
139 if (TraceWorkGang) { |
142 tty->print_cr("Running work gang %s task %s", name(), task->name()); |
140 tty->print_cr("Running work gang %s task %s", name(), task->name()); |