If we're going to bikeshed placement of the method, I'd like to propose a different name for the method. The "fence" part of the name doesn't make much sense and is a common term used in memory ordering discussions.
How about keepAlive? Reference.keepAlive(Object) reads better, IMO. sent from my phone On Nov 24, 2015 8:00 AM, "Vitaly Davidovich" <vita...@gmail.com> wrote: > One can look at reachabilityFence in same light as requesting gc or > finalization, both of which live in Runtime. > > sent from my phone > On Nov 24, 2015 7:54 AM, "David Holmes" <david.hol...@oracle.com> wrote: > >> On 24/11/2015 7:32 PM, Paul Sandoz wrote: >> >>> >>> On 24 Nov 2015, at 01:31, mark.reinh...@oracle.com wrote: >>>> >>>> 2015/11/23 8:38 -0800, paul.san...@oracle.com: >>>> >>>>> Please review the addition of Reference.reachabilityFence contributed >>>>> by Aleksey, Doug and myself: >>>>> >>>>> >>>>> http://cr.openjdk.java.net/~psandoz/jdk9/JDK-8133348-reachability-fence-jdk/webrev/ >>>>> >>>>> http://cr.openjdk.java.net/~psandoz/jdk9/JDK-8133348-reachability-fence-hotspot/webrev/ >>>>> >>>> >>>> This seems eminently reasonable, but why does it belong in the >>>> java.lang.ref.Reference class? It has nothing (directly) to do >>>> with reference objects. >>>> >>>> java.lang.Runtime, perhaps? >>>> >>>> >>> Out of all the places i thought Reference was the least indirect. The >>> method documentation refers to the notion of "strongly reachable” in the >>> j.l.ref package doc (I should update to link directly to that). In effect >>> it’s an operation on potential referents that relates to reachability, >>> garbage collection and finalization. >>> >>> A further weaker argument is Reference is not commonly used thus there >>> may be less chance of this method being misused. >>> >>> I do prefer the current location, but i don’t strongly object to moving >>> it to Runtime. >>> >> >> As all Runtime methods are instance methods the usage here would be a bit >> awkward. Personally I thought reference was a very suitable location for a >> reachability-related method. >> >> Cheers, >> David >> >> Paul. >>> >>> >>> >>>