Matar Instância na força bruta  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
renatosilva
GUJ Master

Membro desde: 16/12/2004 17:09:19
Mensagens: 1787
Offline

Sim, fui eu.

Mas eu tô achando estranho o seguinte: quando o Singleton é instanciado existe um método (mesmo uma ponte pra algo nativo) que efetivamente carrega a tal lista dentro do Singleton. Você não tem como chamar esse método outra vez? Ou será que vai "ferrar" o Singleton?

Sabe que eu tô achando, que essa classe não deveria ser um Singleton, se eu fosse você enviava uma mensagem pros desenvolvedores contando teu caso, isso não devia ser um Singleton...

TiagoFoil
JavaGuru
[Avatar]

Membro desde: 22/02/2005 19:46:49
Mensagens: 205
Offline

Vc deletou o seu post sobre as threads? Num tô achando nem por reza braba! ja tô quase ficando louco aqui achando q eu inventei isso da minha cabeça! mas eu tenho certeza q eu vi isso! Entao como foi sumir assim?!

Posta de novo por favor vai?! ^^
[MSN] [ICQ]
renatosilva
GUJ Master

Membro desde: 16/12/2004 17:09:19
Mensagens: 1787
Offline

Ué, o que eu tinha falado era isso aqui:

renato3110 wrote:Acho que se você pudesse matar o obj à força estaria furando um conceito fundamental do Java, que é cuidar da alocação de memória pra você...

Agora eu não entendi o seguinte: Quando você dá um novo getInstance() e ele pega a tal instância teoricamente já sem referências, ou seja, elegível para GC, como esse método acha ela??????? Isso é possível, a JVM faz isso??? Estranho....

Meio bagaça isso aqui, mas uma idéia é você dar o null no objeto, chamar o gc() e na hora de obter uma nova instância do dito cujo, você lança uma thread com um loop que verifica se o retorno do getInstance é a instância velha (como?), só saido do loop quando não for mais. Ou seja, você fica esperando o GC comer o objeto, sabe-se lá quando....hummm acho que não é mto legal não hehehehe...
frankmt
What is classpath?

Membro desde: 16/07/2006 15:42:50
Mensagens: 6
Offline

Pessoal,


eu sei que o uso de singletons provavelmente vai ocasionar um vazamento de memoria, mas no meu caso, estou usando singletons para criar os DAO's da minha apliacao:



Se eu nao usar singletons, vou ter a cada instanciacao, criar o DAO, utiliza-lo e colocar null nele depois.

Isso vale a pena?

Francisco
[WWW]
pcalcado
Moderador
[Avatar]

Membro desde: 08/03/2004 17:19:35
Mensagens: 5174
Localização: Sydney - Australia
Offline

Não, use uma Factory ou IoC.

Phillip Calçado "Shoes"
http://fragmental.tw/
http://blog.fragmental.com.br/
"It is unfortunate that much of what is called 'object-oriented programming today is simply old style programming with fancier constructs." - Alan Kay
[Email] [WWW] [Yahoo!] [MSN]
frankmt
What is classpath?

Membro desde: 16/07/2006 15:42:50
Mensagens: 6
Offline

O que é um IoC?

Outra pergunta, quando eu devo colocar null em um objeto depois de utiliza-lo? O GC nao deveria saber os objetos que nao estao sendo utilizados?

[]'s
Francisco
[WWW]
ceara
Debugger
[Avatar]

Membro desde: 27/05/2005 10:02:01
Mensagens: 60
Localização: Campinas
Offline

tbm tenho essa curiosidade...

dps de usar um objeto, seto null pra ele?? inútil fazer isso neh!?

rafacastanho.wordpress.com
[WWW] [ICQ]
lavh
GUJ Master

Membro desde: 30/07/2006 16:09:55
Mensagens: 1311
Offline

http://blog.caelum.com.br/2007/01/03/atribuindo-null/
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team