Как я могу отметить код Perl, как удерживается от использования?

Вы не имеете никакого контроля над GC в Java - VM решает. Я никогда не натыкался на случай, где System.gc() , нуждался . Начиная с System.gc() вызов просто ПРЕДЛАГАЕТ, чтобы VM сделали сборку "мусора", и он также делает ПОЛНУЮ сборку "мусора" (старые и новые поколения в относящейся к разным поколениям "куче"), тогда он может на самом деле заставить [еще 115] циклы CPU быть использованным, чем необходимый.

В некоторых случаях, может иметь смысл предлагать VM, чтобы это сделало полный набор ТЕПЕРЬ, поскольку можно знать, что приложение будет простаивать в течение следующих нескольких минут, прежде чем тяжелый подъем произойдет. Например, прямо после инициализации большого временного объекта во время запуска приложения (т.е. я просто кэшировал ТОННУ информации, и я знаю, что не буду получать много действия в течение приблизительно одной минуты). Думайте о IDE, таком как затмение запуск - это делает много для инициализации, поэтому возможно, сразу после инициализации, имеет смысл делать полный gc в той точке.

8
задан Nikolai Prokoschenko 11 November 2009 в 18:05
поделиться

1 ответ

Для методов и функций вы можете просто заменить тело функции предупреждением и вызовом на предпочтительную функцию.

perl perllexwarn дает следующий пример:

 package MyMod::Abc;

 sub open {
     warnings::warnif("deprecated",
     "open is deprecated, use new instead");
     new(@_);
 }

 sub new {
     # ...
 }
 1;

Если вы осуждаете весь модуль, поместите предупреждение в блок BEGIN в модуле.

Вы также можно поместить предупреждения в метод import (например, Win32 :: GUI :: import ): Все зависит от того, что именно вы хотите сделать.

16
ответ дан 5 December 2019 в 10:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: