RFR: 8080879: Remove AbstractGangTask::set_for_termination

Bengt Rutisson bengt.rutisson at oracle.com
Mon May 25 06:44:24 UTC 2015

Hi Stefan,

On 2015-05-22 16:19, Stefan Karlsson wrote:
> Hi all,
> AbstractGangTask::set_for_termination(uint active_workers) is a 
> virtual function that sub-classes can override to run setup code 
> before the task is started. The active_workers parameter tells the 
> task how many workers are going to execute the task.
> Only a few tasks use this infrastructure and most tasks run the setup 
> code in the constructor or before the task is constructed. There is no 
> place where we construct a FlexibleGangTask task, change the number of 
> active workers, and then start the task. The tasks are always started 
> near the construction site. So, I propose that we get rid of 
> AbstractGangTask::set_for_termination to shrink the AbstractGangTask API.
> I didn't want to change how the CMS worker threads are started, so I 
> moved AbstractGangTask::set_for_termination to YieldingFlexibleGangTask.
> http://cr.openjdk.java.net/~stefank/8080879/webrev.00/
> https://bugs.openjdk.java.net/browse/JDK-8080879

Looks good to me. Nice cleanup!


> Thanks,
> StefanK

More information about the hotspot-gc-dev mailing list