ZCollectionInterval is used to trigger GCs within certain time intervals. The flag specifies how many seconds to wait, and the type is uint. That means that the user can only specify the interval as discrete seconds. This is probably fine in most cases, but during stress testing it's often beneficial to be able to set a lower value. I propose that we change the type to double, so that one can use, say, -XX:ZCollectionInterval=0.5 to trigger GC every half second.
Note 1: that there's an effective lower-bound determined by how often the code checks if it's time to start a GC. That timer is today set to 100ms.
Note 2: The change is backwards-compatible, so specifying the flag as an integer still works: -XX:ZCollectionInterval=5
Note 1: that there's an effective lower-bound determined by how often the code checks if it's time to start a GC. That timer is today set to 100ms.
Note 2: The change is backwards-compatible, so specifying the flag as an integer still works: -XX:ZCollectionInterval=5