Path: csiph.com!x330-a1.tempe.blueboxinc.net!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!eternal-september.org!feeder.eternal-september.org!mx04.eternal-september.org!.POSTED!not-for-mail From: markspace <-@.> Newsgroups: comp.lang.java.programmer Subject: Re: reading the JLS (17.4.5) Date: Sun, 18 Dec 2011 06:57:58 -0800 Organization: A noiseless patient Spider Lines: 16 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Sun, 18 Dec 2011 14:58:00 +0000 (UTC) Injection-Info: mx04.eternal-september.org; posting-host="XjIWM99mD7Ijfdu600oVPA"; logging-data="31807"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+4d9Spmaou1WfnKBBkzp/8ozDrMPIVed8=" User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20111105 Thunderbird/8.0 In-Reply-To: Cancel-Lock: sha1:lU9TEOve5aB4AyRBZjMHyTY9ui8= Xref: x330-a1.tempe.blueboxinc.net comp.lang.java.programmer:10850 On 12/18/2011 4:10 AM, Andreas Leitgeb wrote: > How could a "read" that happens-before a particular "write" *ever* > see the "write"'s value? I think you have read it correctly. To elaborate: > " A set of actions A is happens-before consistent if for all > " reads r in A, it is not the case that either hb(r, W(r)), Note that it says "it is NOT the case that ... hb(r, W(r))". The write DOES have to happen before the read, or you won't see it. That's what they're saying.