This is the mail archive of the mauve-discuss@sources.redhat.com mailing list for the Mauve project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Mauve patch


Archie Cobbs <archie@dellroad.org> wrote on Mon, 5 Apr 2004 22:30:34 -0500:

>Is this the right place to send Mauve patches? If not please point me
>(or the patch) in the right direction.

There's a list mauve-discuss@sources.redhat.com  (presumably with mostly
the same subscribers as commit-classpath@gnu.org, although there seem to
be also a few non-Classpath people there).

>In JC, phantom references are enqueued on the next finalizer run
>after the one that finalizes the object, and finalizer runs only
>happen after a GC cycle, therefore the patch below is required to
>make JC pass the test; ie, the test is being too strict.


>Index: gnu/testlet/java/lang/ref/PhantomReference/phantom.java
>===================================================================
>RCS file: /cvs/mauve/mauve/gnu/testlet/java/lang/ref/PhantomReference/
>phantom.java,v
>retrieving revision 1.1
>diff -u -r1.1 phantom.java
>--- gnu/testlet/java/lang/ref/PhantomReference/phantom.java	27 Sep
>2001 15:44:09 -0000	1.1
>+++ gnu/testlet/java/lang/ref/PhantomReference/phantom.java	6 Apr
>2004 03:28:19 -0000
>@@ -70,6 +70,8 @@
> 
>     PhantomReference wr = try1 (q, harness);
>     System.gc ();
>+    Thread.yield();
>+    System.gc ();
> 
>     Reference r = null;
>     try

Does this really guarantee that the finalizer has run? Couldn't this also
lead to any other thread, such as some VM-internal thread, without
running the finalizer? If so, you might want to call Object.notify in the
finalizer and Object.wait at the above code location.

-- Sascha

Sascha Brawer, brawer@dandelis.ch, http://www.dandelis.ch/people/brawer/ 



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]