У меня есть кеш, который использует WeakReferences для кэшированных объектов, чтобы они автоматически удалялись из кеша в случае давления памяти. Моя проблема в том, что кэшированные объекты собираются очень скоро после того, как они были сохранены в кеше. Кэш работает в 64-битном приложении, и, несмотря на то, что все еще доступно более 4-х гигабайт памяти, все кэшированные объекты собираются (в этот момент они обычно хранятся в G2-куче). Как показывает исследователь процесса, сбор мусора не создается вручную.
Какие методы я могу применить, чтобы объекты продолжали жить дальше?