|
|
|
Корректно-ли сделана scala lazy initialization для многопоточного окружения?
|
|||
|---|---|---|---|
|
#18+
Вопрос знатокам JMM. Вот такой scala код после компиляции и декомпиляции в java код при помощи JD-GUI. Код: scala 1. 2. 3. 4. 5. 6. 7. 8. Превращается в Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. Не возможна-ли ситуация при которой boolean флаг уже установлен, а текущий поток ещё не увидел что переменная инициализирована? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2015, 17:57 |
|
||
|
Корректно-ли сделана scala lazy initialization для многопоточного окружения?
|
|||
|---|---|---|---|
|
#18+
Запись в volatile-переменную действует как барьер и гарантирует, что записи во все переменные "до" - записаны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2015, 18:51 |
|
||
|
Корректно-ли сделана scala lazy initialization для многопоточного окружения?
|
|||
|---|---|---|---|
|
#18+
В этом форуме, как следует из его названия, обсуждается Java, а не Scala. Свободны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2015, 20:11 |
|
||
|
Корректно-ли сделана scala lazy initialization для многопоточного окружения?
|
|||
|---|---|---|---|
|
#18+
Ну почему бы и не обсудить, все-таки вопрос на уровне JVM и байткода. согласен с ответом Basil ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2015, 21:22 |
|
||
|
Корректно-ли сделана scala lazy initialization для многопоточного окружения?
|
|||
|---|---|---|---|
|
#18+
Partisan M, А где обсуждается Scala? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2015, 23:58 |
|
||
|
Корректно-ли сделана scala lazy initialization для многопоточного окружения?
|
|||
|---|---|---|---|
|
#18+
Поскольку в sql.ru нет раздела посвященного Scala то самое уместное место обсуждения - здесь. Либо в Программинге.. Кроме того в процессе использования Scala - неизбежно будут вопросы интеграции Scala+Java систем (таковы реаалии). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2015, 09:29 |
|
||
|
Корректно-ли сделана scala lazy initialization для многопоточного окружения?
|
|||
|---|---|---|---|
|
#18+
Вполне очевидно, что это ветка про java как совокупность технологий, а не только как про язык. Видимо злой комментатор не знал, что scala работает на java технологии. Ну молодец, самоутвердился, теперь иди читай доки а мы будет дальше тут об этом говорить. Насчет вопроса о корректности. Мне тоже кажется, что сделано корректно, ведь этот код фактически повторяет код синглтона. Де-факто, это синглтон с двойной проверкой, у которого убрали модификатор static. Чтение волатила гарантируют, что - увидится записанное другим потоком в этот волатил. Т.е., bitmap$0 увидится - увидятся все изменения, которые были сделаны другим потоком до записи в этот волатил. Т.е., sample тоже должен увидится правильно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2015, 14:18 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=129&tid=2125377]: |
0ms |
get settings: |
5ms |
get forum list: |
14ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
31ms |
get topic data: |
5ms |
get forum data: |
1ms |
get page messages: |
22ms |
get tp. blocked users: |
1ms |
| others: | 212ms |
| total: | 293ms |

| 0 / 0 |
