99% это много, но вообще ни разу не 100%ext_1168151April 22 2014, 23:33:55 UTC
я конечно не люблю как г-н Шипилев художественно опускать людей прочитавших jmm и считающих что они познали истину в конечной инстанции но все же замечу:
jmm это больше декларация о намериниях которая ОТСТАЕТ от фактичечкой реализации. Другими словами утверждение о том что программа не соответствующая JMM работает неправильно НЕВЕРНО
в силу ряда обстоятельств субъективного характера из корректности программы по JMM НЕ СЛЕДУЕТ корректность работы программы.
получили грабли в обе стороы. т.е. не можем установить ни отношения следствия ни равносильности.
что будем делать с операциями которые не нашли отражения в JMM (поскольку появились ПОСЛЕ нее?) Atomic*.lazySet() не использовать? (а как же hb/ha ??)
в общем не плоди фанатиков :) а то фраза "я знаю jmm ща я вам объясню как оно должно быть" воспринимается мной как "я прочитал евангелие от луки!" хочется ответить "их еще 12 - иди читай дальше"
Re: 99% это много, но вообще ни разу не 100%elizarovApril 23 2014, 12:00:15 UTC
Безусловно. Так же как и то, что на практике все-равно полна формальная сиситема или нет, до тех пор, пока она достаточно широка, чтобы получать реазультаты нужные на практике.
Re: 99% это много, но вообще ни разу не 100%elizarovApril 23 2014, 11:58:40 UTC
Вроде я нигде и не утверждал что "программа не соответствующая JMM работает неправильно". Если у кого-то по результатам моего доклада возникло такое ощущение, то заранее извиняюсь. Однако, это никак не связано с "ОТСТАВАНИЕМ" от фактический реализацию. Скажу больше, для любой конкрентной реализации (JVM + платформа) всегда можно написать программу для которой нет гарантии корректной работы по спецификации, но которая корретно работает на данной реализации. Так будет всегда по определению. Сила и суть JMM в том, что она дает некий минимальный набор гаранткий, которая позволяет писать такие программы, которые корректно работают на любой реализации
( ... )
Comments 32
jmm это больше декларация о намериниях которая ОТСТАЕТ от фактичечкой реализации. Другими словами утверждение о том что программа не соответствующая JMM работает неправильно НЕВЕРНО
в силу ряда обстоятельств субъективного характера из корректности программы по JMM НЕ СЛЕДУЕТ корректность работы программы.
получили грабли в обе стороы. т.е. не можем установить ни отношения следствия ни равносильности.
что будем делать с операциями которые не нашли отражения в JMM (поскольку появились ПОСЛЕ нее?) Atomic*.lazySet() не использовать? (а как же hb/ha ??)
в общем не плоди фанатиков :) а то фраза "я знаю jmm ща я вам объясню как оно должно быть" воспринимается мной как "я прочитал евангелие от луки!" хочется ответить "их еще 12 - иди читай дальше"
Reply
Reply
Reply
Reply
(The comment has been removed)
Reply
Leave a comment