Небольшой вопрос относительно производительности в веб-приложении Java.
Предположим, у меня есть List<Rubrique>
listRubriques
с десятью Rubrique
объектами.
Rubrique
содержит один список продуктов (List<product>
listProducts
) и один список клиентов (List<Client>
listClients
).
Что именно произойдет в памяти, если я сделаю это:
listRubriques.clear(); listRubriques = null;
Я считаю, что, поскольку listRubriques
пусто, все мои объекты, на которые ранее ссылался этот список (включая listProducts
и listClients
), довольно скоро будут собраны мусором. Но поскольку Коллекция на Java немного сложна, и поскольку у меня довольно проблемы с производительностью с моим приложением, я задаю вопрос :)
edit: предположим теперь, что мой объект Client содержит List<Client>
. Следовательно, у меня есть своего рода круговая ссылка между моими объектами. Что произойдет, если мой listRubrique
установлен на null
? На этот раз я считаю, что мои объекты Client станут «недоступными» и могут вызвать утечку памяти?