[resolvido]No visual vm o Heap size esta aumentando

1 resposta
homisinho

Tenho uma classe

Public class Ponto(){
    private Date data;
    private Time hora;

metodos?
}

E tenha uma outra classe q estende essa:

public class Bola extends Ponto implements MouseMotionListener{

    public int valorescala [][];
    public int posY [][];
....private BufferedImage ultimaIMG;

    public Bola(Ponto p){
        super(p);
     }
}

e digamos q eu tenha um jFrame onde tenha uma jTable e cada vez que eu clico em uma celula eu faço o seguinte

circ = new Bola (listaP.getTPonto(gridPonto.getSelectedRow()));

O sistema cada vez mais vai aumentando o Heap size.

Bom, digamos que esteja tendo um problema de memória pois me parece que o objeto circ antigo fica alocado em memória, ou alguns de seus atributos pois olhando no visual vm vejo q tenho milhares de objetos int e Colors que utilizo para criar o BufferedImage.

O meu problema n esta nos meus DAOs certifiquei-me de que todos os PreparedStatement e ResultSet estão sendo fechados.

O que estou fazendo de errado :?:

Ao dar new Bola o GC deveria destruir todos os objetos e atributos ligados a Bola anterior :?:

Estou procurando no código se tenho alguma referência ao objeto Bola antigo mas n tenho nada.

1 Resposta

homisinho

Desculpa ai pessoal mas acho q o GC é mais inteligente do que eu pensava :smiley: :smiley:

Como n estava dando estouro de memória cheguei a conclusão, deveria testar com um heap menor de memória para ver se iria dar estouro ou não e tirar logo isso da cabeça.

Para fazer esse teste, como uso o netbeans, fui ate as ?propriedades? do meu projeto na opção ?executar? e nas opções da VM coloquei alguns limites -XMS e -XMX, fazendo isso vi que o GC começou a trabalhar e liberar a memória q necessitava.
Achei q estava fazendo algo de errado esquecendo alguma referência ou por algum tipo de erro de sintaxe… sei lá…

Criado 9 de setembro de 2009
Ultima resposta 11 de set. de 2009
Respostas 1
Participantes 1