Currently G1 uses normal doubles to hold time spans and points in time.
This has several disadvantages:
- there is no compiler help in detecting errors (matching units) when using them in calculations.
- since the time unit is not stored anywhere the code it is encoded in the variable and method names. This clutters the code and does not help with unit safety.
The suggestion here is to have G1 the Ticks/Tickspan type to store time and time spans instead.
This has several disadvantages:
- there is no compiler help in detecting errors (matching units) when using them in calculations.
- since the time unit is not stored anywhere the code it is encoded in the variable and method names. This clutters the code and does not help with unit safety.
The suggestion here is to have G1 the Ticks/Tickspan type to store time and time spans instead.
- blocks
-
JDK-8243975 Improve G1 naming of identifiers after JDK-8208390
-
- Open
-
- duplicates
-
JDK-8165576 Time base of G1 collector should not be seconds stored in doubles
-
- Closed
-
- relates to
-
JDK-8243974 Move G1CollectedHeap::millis_since_last_gc support from G1Policy
-
- Closed
-
-
JDK-8243977 Undo workaround for Solaris/SPARC in WorkerDataArray<T>::print_summary_on
-
- Closed
-