diff options
author | Mathieu Chartier <mathieuc@google.com> | 2014-09-19 09:44:24 -0700 |
---|---|---|
committer | Mathieu Chartier <mathieuc@google.com> | 2014-10-02 14:58:59 -0700 |
commit | 60b42150472edbdc93cafbeadebefd40cbb87639 (patch) | |
tree | 0d2df2da3c0b2347bd8d2bd61ecf2159c7d180f5 | |
parent | 1c40fe5dbb39eaa6eed3fde3f06effe3517b32d0 (diff) | |
download | apache-harmony-lollipop-dev.tar.gz |
Maybe fix flaky testlollipop-dev
Changed System.gc() to use System.gc() and System.runFinalization()
to ensure that finalizers are run.
Bug: 17305633
Change-Id: I33722a3ca0360a94cca58445e6b22b4abbf4c8af
-rw-r--r-- | jdwp/src/test/java/org/apache/harmony/jpda/tests/jdwp/ObjectReference/IsCollectedDebuggee.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/jdwp/src/test/java/org/apache/harmony/jpda/tests/jdwp/ObjectReference/IsCollectedDebuggee.java b/jdwp/src/test/java/org/apache/harmony/jpda/tests/jdwp/ObjectReference/IsCollectedDebuggee.java index 742bc55..070b34d 100644 --- a/jdwp/src/test/java/org/apache/harmony/jpda/tests/jdwp/ObjectReference/IsCollectedDebuggee.java +++ b/jdwp/src/test/java/org/apache/harmony/jpda/tests/jdwp/ObjectReference/IsCollectedDebuggee.java @@ -31,11 +31,11 @@ import org.apache.harmony.jpda.tests.share.SyncDebuggee; public class IsCollectedDebuggee extends SyncDebuggee { static IsCollectedObject001_01 checkedObject_01; - static boolean checkedObject_01_Finalized = false; + static volatile boolean checkedObject_01_Finalized = false; static IsCollectedObject001_02 checkedObject_02; - static boolean checkedObject_02_Finalized = false; + static volatile boolean checkedObject_02_Finalized = false; static IsCollectedObject001_03 checkedObject_03; - static boolean checkedObject_03_Finalized = false; + static volatile boolean checkedObject_03_Finalized = false; public void run() { logWriter.println("--> Debuggee: IsCollectedDebuggee: START"); @@ -69,7 +69,10 @@ public class IsCollectedDebuggee extends SyncDebuggee { // logWriter.println("--> Debuggee: i = " + i); } longArray = null; - System.gc(); + Runtime.getRuntime().gc(); + System.runFinalization(); // Make sure that the finalizers are finished running. + // Make sure the JNI weak globals are cleared, need to do this after runFinalization. + Runtime.getRuntime().gc(); logWriter.println("--> Debuggee: AFTER System.gc():"); logWriter.println("--> Debuggee: checkedObject_01 = " + checkedObject_01); |