On Fri, 28 Mar 2025 01:08:42 GMT, Brent Christian <[email protected]> wrote:
>> I propose some cleanups to `FinalizerHistogramTest.java` to hopefully clear
>> up the intermittent failures:
>>
>> * run with `othervm`: this test blocks the (global) finalizer thread, and
>> also requires the (global) finalizer thread to enter the test's `finalize()`
>> method
>> * The test uses `volatile` ints, but sets them based on their current value,
>> which is not reliable; convert to `AtomicInteger`
>> * use `PhantomReference`s to ensure that at least two `MyObject`s have
>> become unreachable. If one is stuck in `finalize()`, at least one is still
>> waiting to be finalized and should show up in the histogram.
>
> Brent Christian has updated the pull request incrementally with one
> additional commit since the last revision:
>
> convert to WeakRefs, use a RefQ, print ForceGC results
test/jdk/java/lang/ref/FinalizerHistogramTest.java line 70:
> 68: lock.lock();
> 69: refQForTwo = new RefQForTwo(new MyObject(), new MyObject());
> 70: for(int i = 2; i < OBJECTS_COUNT; ++i) {
Suggestion:
for (int i = 2; i < OBJECTS_COUNT; ++i) {
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/24143#discussion_r2029954070