Я предлагаю вам сделать анализ того, почему GC работает недостаточно хорошо для вас.Вы можете использовать jmap
для выгрузки кучи, а затем используйте jhat
или Eclipse Memory Analyzer , чтобы увидеть, какие объекты в нем живут.Возможно, вы обнаружите, что держитесь за ссылки, которые вам больше не нужны.
GC очень умный, и вы могли бы даже усугубить ситуацию, пытаясь перехитрить его с помощью собственного кода управления памятью.Попробуйте настроить параметры, и, возможно, вы тоже можете попробовать новый сборщик мусора G1.
Кроме того, помните, что GC любит недолговечные неизменные объекты.