Почему большинство языков сценариев используют меньше памяти?

Я только что посмотрел на некоторые тесты языка программирования здесь: http://benchmarksgame.alioth.debian.org/u64q/compare.php?lang=php&lang2 = Java

Я заметил, что такие языки, как PHP, Ruby и Python были медленнее, но на удивление использовали меньше памяти, чем Java в большинстве тестов. В чем причина этого?

3

Решение

Когда вы используете Oracle Java, Java-программы компилируются не в машинный код, который может быть немедленно выполнен ЦП, а в промежуточную форму, называемую «Java-байтовый код».

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

Все это приводит к тому, что Java-программам требуется много памяти даже для небольших программ.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]