Сбой сравнения переменной шаблона Django со строковым литералом

Все зависит от того, что делает геттер. Если это простой getter (получение члена данных), тогда JVM сможет встроить его «на лету», если он определит, что этот код является «горячей точкой» для производительности. На самом деле, почему JVM Oracle / Sun называется «HotSpot». :-) Он будет применять агрессивную оптимизацию JIT, где он видит, что ему это нужно (когда это возможно). Если геттер делает что-то сложное, то, естественно, может быть медленнее использовать его и повторить эту работу.

Если код не является «горячей точкой», конечно, вам все равно, разница в производительности.

Кто-то однажды сказал мне, что встроенный геттер иногда может быть быстрее, чем значение, кэшированное локальной переменной, но я никогда не доказывал это самому себе и не знаю теории почему это было бы так.

13
задан Sir Conquer 17 September 2010 в 01:28
поделиться