Какие классы API Java Standard могут вызывать утечку памяти при неправильном использовании (не явно)? И как можно избежать/исправлять эти утечки памяти?
Пример: ObjectInputStream
и ObjectOutputStream
хранить ссылки на все объекты, которые они видели, чтобы отправлять последующие вхождения одного и того же объекта в качестве ссылок, а не копий (и тем самым иметь дело с циклическими ссылками), Это приводит к утечке памяти, когда вы держите такой поток открытым неограниченно (например, при его использовании для связи по сети).
Исправить: Вызов reset() периодически или после каждого объекта верхнего уровня.