History log of /libcore/luni/src/main/java/java/lang/ref/Reference.java
Revision Date Author Comments
2680db46e43b69cc1c49429d371cd1c7512d6f2c 01-Aug-2012 Elliott Hughes <enh@google.com> Clean up lint in java.lang.ref.

Change-Id: Ie54af5965f07e8f0261eaeb5803d718658da2a23
64c6c367497c7fcf88e7527022234043e4460758 21-Jun-2011 Jesse Wilson <jessewilson@google.com> Implement the finalizer watchdog.

Change-Id: Ia4aaf5f0ef5a2f5f7e6ec3e8b4c4e300c9e1b2ee
http://b/4144865
55d86d85b3cd11461ba793cdc8ed74c87311a447 31-Mar-2011 Carl Shapiro <cshapiro@google.com> Implement reference queuing in managed code.

This change adds a thread to the core library which receives a list of
references after a garbage collection and enqueues each element. This
list is constructed by linking together the pendingNext field of cleared
references into a circular queue.

To support this change, the pendingNext field has been replaced by the
new zombie field for the purposes of providing a strongly reachable
location within a FinalizerReference class instance.

Change-Id: Id09133e44c850797e7f14c5471123a036d027c80
bbfadc8ae01454abba5335fccceaa1c80123ae49 21-Mar-2011 Carl Shapiro <cshapiro@google.com> Move finalization into the core library.

Change-Id: I969ecc25f2a7e655e1093855514102662846dfe1
32c2297a959b72abdb18743f0519e1d8b7c7ea88 17-Mar-2011 Elliott Hughes <enh@google.com> Remove bogus "super()" calls.

I've left one in java.util.concurrent, since we have an upstream there.

Change-Id: I60945e48a41433fc7eaef6086433ec4bf434097f
ba1e5f9b7ffe3a42f1001ece077f566de8231548 12-Mar-2011 Carl Shapiro <cshapiro@google.com> Add a new constructor to the Reference class.

This eliminates the duplicated initialization of the reference and queue
members in all subclasses of Reference.

Change-Id: I673fc9443f94e84e33c78637bc5dad9aaa97873e
c1d2d99619f44fb5fea07744bc34de725e807f9d 09-Jul-2010 Carl Shapiro <cshapiro@google.com> Add a distinct field to thread pending references together.

Presently, reference objects discovered during a trace are threaded
together using the queueNext field. This field is also used by the
reference queue class to thread together its enqueued objects.

When the garbage collector is run concurrently, a user may enqueue a
reference object simultaneously discovered by the trace. This will
corrupt the pendingNext values by aliasing to a reference queue.

To avoid this problem, a forthcoming VM change will use this new field
to thread pending references. If the garbage collector discovers that
a pending reference has been added to a reference queue it will short
circuit the reference processing of that object.

Change-Id: I280cc4a4fc4abd67dd80add1969aed12133c9369
e608e409843d2a0bb356522f2781a00cb0493cec 23-Jun-2010 Barry Hayes <bhayes@google.com> Remove the vmData field from java.lang.ref.Reference.

It is no longer needed.

Change-Id: If0e8ff7438c31cc2f88be401d826b0efba308ff1
f33eae7e84eb6d3b0f4e86b59605bb3de73009f3 13-May-2010 Elliott Hughes <enh@google.com> Remove all trailing whitespace from the dalvik team-maintained parts of libcore.

Gentlemen, you may now set your editors to "strip trailing whitespace"...

Change-Id: I85b2f6c80e5fbef1af6cab11789790b078c11b1b
6b811c5daec1b28e6f63b57f98a032236f2c3cf7 03-May-2010 Peter Hallam <peterhal@google.com> Merge awt-kernel, icu, luni-kernel, prefs, security-kernel, x-net into luni
Merge xml except xmlpull and kxml into luni