【发布时间】:2011-01-06 09:41:19
【问题描述】:
关于 Java Web 应用程序性能的一个小问题。
假设我有一个 List<Rubrique> listRubriques 和十个 Rubrique 对象。
Rubrique 包含一份产品列表 (List<product>listProducts) 和一份客户列表 (List<Client>listClients)。
如果我这样做,内存中究竟会发生什么:
listRubriques.clear(); listRubriques = null;
我的观点是,由于listRubriques 是空的,我之前在此列表中引用的所有对象(包括listProducts 和listClients)很快就会被垃圾回收。但是由于 Java 中的 Collection 有点棘手,而且由于我的应用程序存在相当大的性能问题,所以我在问这个问题 :)
编辑:现在假设我的 Client 对象包含 List<Client>。因此,我的对象之间有一种循环引用。如果我的listRubrique 设置为null 会发生什么?这一次,我的观点是我的 Client 对象将变得“无法访问”并且可能造成内存泄漏?
【问题讨论】:
标签: java performance collections garbage-collection