В веб-приложении Scala используется lazy val, ограниченное временем жизни сервера приложений, или запрашивается область действия?Scala web :: lazy val scope/lifetime
Я предполагаю, что это за запрос, но не смогли найти окончательный ответ, таким образом, вопрос.
Благодаря
Да, я понимаю, что оценка однажды бит ;-), когда вы говорите: «если переменная является частью объекта, созданного для каждого запроса», это означает, что при ЛЮБОМ новом создании объекта lazy свойство будет оцениваться один раз (так если я обновляю 10 экземпляров класса и получаю доступ к ленивым foo для каждого экземпляра, я понес бы накладные расходы ленивым 10X) – virtualeyes
Как это относится к Scala singleton Objects, кстати? Существует не экземпляр объекта, созданный, так что здесь всегда, доступ один раз и будущие обращения не берут ленивых накладных расходов, я предполагаю. – virtualeyes
@virtualeyes: yes, 'lazy' привязан к экземпляру объекта, поэтому, если вы создаете 10 объектов и получаете доступ к' lazy' свойству каждого из них, он будет оцениваться один раз * для каждого объекта *. WRT 'object' classes (singleletons) - существует только один экземпляр, поэтому« lazy »оценивается один раз для этого класса (за« ClassLoader »). –