JDK-8027351: (ref) Base's class finalize method not invoked if a private finalize method exists in its subclass
Mandy Chung
mandy.chung at oracle.com
Tue Nov 5 20:24:42 UTC 2013
On 11/5/2013 1:11 AM, Paul Sandoz wrote:
> On Nov 5, 2013, at 3:21 AM, Mandy Chung <mandy.chung at oracle.com> wrote:
>>> 2. In VM.java. booted need not be volatile now that it is only accessed within a locked region. Also awaitBooted might as well be void as it can only ever return true.
>>>
>> Fixed. Revised webrev at:
>> http://cr.openjdk.java.net/~mchung/jdk8/webrevs/8027351/webrev.03/
>>
> The booted field is also accessed directly from within other areas of the VM class e.g.:
>
> 272 // This method can only be invoked during system initialization.
> 273 public static void saveAndRemoveProperties(Properties props) {
> 274 if (booted)
> 275 throw new IllegalStateException("System initialization has completed");
>
> 323 public static void initializeOSEnvironment() {
> 324 if (!booted) {
> 325 OSEnvironment.initialize();
> 326 }
> 327 }
Oops... missed to look at its use within VM class. A good reason to
keep booted as volatile originally.
Mandy
More information about the core-libs-dev
mailing list