Не связывайтесь с финализаторами.
Переключиться на добавочную сборку мусора.
Если вы хотите помочь сборщику мусора, аннулируйте ссылки на объекты, которые вам больше не нужны. Меньше пути для следования = более явный мусор.
Не забывайте, что (нестатические) экземпляры внутреннего класса хранят ссылки на экземпляр своего родительского класса. Таким образом, внутренняя нить класса хранит намного больше багажа, чем вы могли бы ожидать.
В очень связанном ключе, если вы используете сериализацию и сериализовали временные объекты, вам необходимо очистить кэши сериализации, вызвав ObjectOutputStream.reset (), иначе ваш процесс утечет память и в конце концов умру.
Недостатком является то, что непереходные объекты будут повторно сериализованы.
Сериализация временных объектов результатов может быть немного более грязной, чем вы думаете!
Рассмотрите возможность использования мягких ссылок. Если вы не знаете, что такое мягкие ссылки, прочитайте javadoc для java.lang.ref.SoftReference
Держитесь подальше от фантомных ссылок и слабых ссылок, если только вы действительно не возбудитесь.
Наконец, если вы действительно не можете терпеть GC, используйте Realtime Java.
Нет, я не шучу.
Ссылочная реализация бесплатна для скачивания, и книга Питера Диббла из SUN действительно хороша для чтения.