--- a/hotspot/src/share/vm/gc/shared/workgroup.hpp Sun May 01 12:47:00 2016 +0300
+++ b/hotspot/src/share/vm/gc/shared/workgroup.hpp Mon May 02 10:24:41 2016 +0200
@@ -192,8 +192,12 @@
bool are_GC_task_threads,
bool are_ConcurrentGC_threads);
- // Run a task, returns when the task is done.
+ // Run a task using the current active number of workers, returns when the task is done.
virtual void run_task(AbstractGangTask* task);
+ // Run a task with the given number of workers, returns
+ // when the task is done. The number of workers must be at most the number of
+ // active workers.
+ void run_task(AbstractGangTask* task, uint num_workers);
protected:
virtual AbstractGangWorker* allocate_worker(uint which);