Request for Review: 7094995: test/java/util/zip/ZipFile/ClearStaleZipFileInputStreams.java causes continuous GC in agentvm mode
Neil Richards
neil.richards at ngmr.net
Tue Nov 22 16:16:30 UTC 2011
On Tue, 2011-11-22 at 15:49 +0000, Alan Bateman wrote:
> On 22/11/2011 11:51, Neil Richards wrote:
> > Hi all,
> >
> > I've created a webrev [1] to address the problem reported in bug
> > 7094995, where the ClearStaleZipFileInputStreams testcase leaves a
> > lingering GC inducing thread running after the test ends (when run in
> > agentvm mode), as spotted by Alan and mentioned in another conversation
> > [2].
> >
> > It modifies the testcase so the main thread tells the GcInducingThread
> > to shut down, and waits for it to do so (using Thread.join()) before
> > exiting.
> >
> > I've also converted the testcase's use of ZipFile, ZipOutputStream&
> > FileOutputStream to use ARM (for greater clarity).
> >
> > Please let me know your thoughts on this change,
> >
> Thanks for coming back to this test. It looks okay to me except I would
> change the notify to notifyAll (I assume you decided to use wait/notify
> rather than a volatile flag to avoid waiting for the sleep to complete).
>
> -Alan.
Hi Alan,
Thanks for taking a look at this change.
You're right, I switched to using wait/notify so the GC'ing thread will
stop waiting as soon as it's been told to shut down.
Changing the notify to notifyAll is harmless enough, and makes it (even)
clearer that the GC'ing thread will definitely be notified by the call.
I've uploaded a webrev with this amendment [1].
Regards, Neil
[1] http://cr.openjdk.java.net/~ngmr/7094995/webrev.01/
--
Unless stated above:
IBM email: neil_richards at uk.ibm.com
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
More information about the core-libs-dev
mailing list