The current state of the G1 collector is encapsulated in the g1CollectorState class, but the state is scattered over a set of 12 booleans. The actual number of legal states is less than 10, so there are 4000+ illegal combinations of those booleans :-)
The state should be replaced by one (or a few) proper state variables with a proper state machine managing legal transitions between states.
The state should be replaced by one (or a few) proper state variables with a proper state machine managing legal transitions between states.
- is blocked by
- 
                    JDK-7097567 G1: abstract and encapsulate collector phases and transitions between them -           
- Resolved
 
-         
- 
                    JDK-8199742 Clean up state flags in G1CollectorState -           
- Resolved
 
-         
