Thanks to Victor, Sarita and Bill, I'm now convinced:)
To reiterate, here's what I've learned from these discussions:
1) "Data-race-free (under SC executions) programs are SC" is a desired
property. The design decision of using SC executions to define data race
here is based on a very solid reason: this helps programmers to determine
- especially when this is based on their intuitions instead of an
automatic race detector - if their code is race-free.
2) "Non-intrusive reads" is also a desired property. This is to allow
programmers to add debug messages without worrying about changing program
3) In order to achieve all the desired goals, potential "interactions" of
these properties (implications when combining all these goals), must be
carefully considered when designing the JMM.
JavaMemoryModel mailing list - http://www.cs.umd.edu/~pugh/java/memoryModel
This archive was generated by hypermail 2b29 : Thu Oct 13 2005 - 07:00:52 EDT