Вы можете попробовать это:
let Manuel = new Student("Manuel", "lesi", "3", "98789", 2014)
console.log(Manuel.number);
delete Manuel.number // if you try delete student.number then it not work
console.log(Manuel);
Нет.
То, что вы можете сделать с приложением, которое имеет очень изменяющиеся требования к куче, - это установить максимальный размер кучи с помощью -Xmx
и настроить -XX: MaxHeapFreeRatio
и -XX: MinHeapFreeRatio
, чтобы приложение не зависало на большом количестве памяти при уменьшении кучи (оно делает это с настройками по умолчанию).
Но учтите, что это может вызвать проблемы с производительностью, когда память, фактически используемая приложением, сильно и быстро меняется - в этом случае лучше, если она будет висеть на всей памяти, а не возвращать ее только ОС. требовать это снова секунду спустя. Возможно, вы также захотите поиграть с опциями GC , чтобы убедиться, что GC не оставляет слишком много невостребованных объектов, лежащих вокруг, что он имеет тенденцию делать, когда там '
Согласно http://www.dreamincode.net/forums/showtopic96263.htm , Вы не можете сделать это во время выполнения, но можете запустить другой процесс с другим размером кучи.
Вы можете настроить эти параметры при запуске приложения, но после запуска JVM и запуска эти значения не могут быть изменены. Примерно так:
java -Xms32m -Xmx512m FooBar
установит минимальный размер кучи равным 32 МБ, а максимальный размер кучи - 512 МБ. Как только они установлены, вы не можете изменить их в работающей программе.
Если я правильно понимаю ваш вопрос, вы пытаетесь изменить размер кучи во время выполнения , Я не вижу причин, почему это должно быть возможно. Установите размер кучи при запуске , используя опцию -Xmx
JVM. Я также советую вам установить опцию -Xms
, только если вам это абсолютно необходимо. Эта опция устанавливает начальный объем памяти заголовка, выделенной для JVM.
Вы должны знать, как ваше приложение ведет себя с точки зрения памяти. Мудро установите значение -Xmx
. Если ваше приложение представляет собой какое-то серверное приложение, вы можете установить более высокое значение, иначе скомпрометируйте свой выбор с другими возможными приложениями, работающими на клиентских компьютерах и, конечно, с доступной памятью.
Все согласны с тем, что это действительно невозможно, но мы должны посмотреть на исходный код JVM, чтобы увидеть, как им можно эргономично управлять. . Было бы очень хорошо иметь возможность иметь агент JVMTI, который может настраивать размер кучи / разрешенных / временных / новых / и т. Д. В режиме онлайн / во время выполнения.
Что это будет делать? это позволит агентам делать выводы о корректировках размеров на основе целей производительности или занимаемой площади, что будет важно при перемещении JVM в облако.
Я задал тот же вопрос себе. И в отличие от ответов выше, есть что-то, что я могу сделать примерно My приложение, увеличивая максимальный размер кучи JVM. Если приложение является веб-сервером в режиме кластера, я мог бы запустить новый экземпляр с измененным размером кучи MIN / MAX и, чем выходной экземпляр. Это должно быть особенно простым в Glassfish, где у вас есть экземпляр управления от NODEAGENT (App-сервер кластеризованного экземпляра) JVM.
Поскольку многие приложения JVM являются веб-приложениями, я думаю, что стоит сохранить в этом блоге.
Вы можете использовать опцию -MX при запуске (также известен как -xmx ) Это максимальный размер, который вы когда-либо должны понадобиться Не следует надо настроить его больше, чем максимальный размер, который вам когда-либо понадобится.
Тем не менее, работа вокруг состоит в том, чтобы иметь основной () проверять максимальный размер и перезапустить Java, если максимальный размер не по желанию. I.e. Начните еще одну программу Java и умирайте.