> On 6 Apr 2016, at 15:28, fo...@univ-mlv.fr wrote:
> 
> > > While i fully agree in the general case, in disagree for this specific
> > > case,
> > > there are few uses of ARFU inside the JDK (or outside) but currently
> > > because BufferedInputStream uses an ARFU, each time someone starts a Java
> > > application, the VM loads ARFU and its implementation with a high
> > > probability to no need it at all after
> > >
> >
> > Does that really contribute sufficiently to slow down in start time? It
> > really seems like a micro-optimisation.
> 
> small streams become big rivers (i don't know the idiomatic sentence in 
> English, so it's a rough translation from a French idiom),
> "Death by a thousand cuts" is one of my favorites :).  A "flat profile" is 
> another description of a similar thing.
> 
I still remain unconvinced in this case that such changes warrant an increase 
in unsafe usage (temporary or otherwise).

> In general, I agree that easy/cheap/maintainable/etc wins should be done even 
> if individually they don't matter much (if that were the requirement, there 
> would be no progress whatsoever).
> 
> In this case, using Unsafe for now seems trivial; when VH is ready, someone 
> is going to sweep the code anyway and this will be just one more place to 
> mechanically update.  Is VH definitely going to be part of Java 9? If so, 
> then perhaps no point in making this change unless it's going to be 
> backported to Java 8.
> 
> Also don't forget that releasing VarHandle API as a public API for 9 is 
> vastly different from replacing all usages of Unsafe by some VarHandle 
> methods inside the JDK, see Paul's answser about the bootstrap issues.
> 

VHs are now in jdk9/dev. I dunno when it will rise up to the master and the 
next EA build.

Paul.

Reply via email to