JavaMemoryModel: Memory Model JSR status report

From: Bill Pugh (
Date: Mon Apr 23 2001 - 11:42:51 EDT

Just to keep people up to date.

Tim Lindholm is working on putting the JSR through the internal
machinery at Sun. Tim is bogged down with lots of other stuff, so
things got delayed, but hopefully it should appear any time now.

As far as I know, the only things that are likely to be controversial
in the informal semantics are:

* Should volatiles be sequentially consistent, or relaxed slightly to
processor ordering? This relaxation can only be observed with three
or more processors, and no one has been able to come up with a case
where this relaxation causes problems. This relaxation could have a
significant performance impact on some processors (we are still
investigating this). The major known downside to this relaxation is
that the model gets harder to explain, both formally and informally.

* The ban against changing final fields. There are two places where
this could be an issue. One would be bean builder environments, where
a tool might want to change fields that are final. The other, more
serious problem, relates to de-serializing objects that have final
fields. There doesn't seem to be any good way to handle such cases.
(Of course, even under the existing scheme, you need to use native
code to change the final fields, which is pretty damn ugly).

Of course, when the JSR gets posted, who knows what sort of comments
we will get on it.

JavaMemoryModel mailing list -

This archive was generated by hypermail 2b29 : Thu Oct 13 2005 - 07:00:31 EDT