| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/12/2008 11:26:11
|
Marck
Virtual Machine Man
![[Avatar]](/images/avatar/efc9ea3e0c2ed2c2481fe1252019266e.jpg)
Membro desde: 15/08/2006 16:15:11
Mensagens: 598
Offline
|
Boa tarde,
Alguém sabe se o GC faz coleta no Pool de String?
obrigado!
This message was edited 2 times. Last update was at 15/12/2008 11:45:16
|
"A vida me deu tudo que eu pedi. Agora se o que eu pedi foi pouco, ai o problema já é meu!". Sartre
Besteiras sobre programação
http://toobject.wordpress.com/
DataModelDinamic |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/12/2008 11:44:32
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20557
Localização: Curitiba/PR
Offline
|
Não há nada que impeça ele de fazer isso. Mas o comportamento exato varia de VM para VM.
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/12/2008 12:11:56
|
Marck
Virtual Machine Man
![[Avatar]](/images/avatar/efc9ea3e0c2ed2c2481fe1252019266e.jpg)
Membro desde: 15/08/2006 16:15:11
Mensagens: 598
Offline
|
Mas geralmente, há coleta dentro do Pool?
|
"A vida me deu tudo que eu pedi. Agora se o que eu pedi foi pouco, ai o problema já é meu!". Sartre
Besteiras sobre programação
http://toobject.wordpress.com/
DataModelDinamic |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/12/2008 12:31:12
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Por exemplo, tente rodar este programa na JVM da Sun. Você vai ver que a string internada (isto é , posta no pool de strings) é tão suscetível à limpeza pelo GC como qualquer outra, se não houver referências para ela.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/12/2008 12:40:46
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20557
Localização: Curitiba/PR
Offline
|
Ok, mas volto a dizer que esse comportamento é específico de implementação e não é, em hipótese alguma, obrigatório.
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/12/2008 12:42:39
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
E é por isso que indiquei que era para rodar o meu programa em uma JVM da Sun. Se for tentar rodar o mesmo programa em outra JVM não deve obter o mesmo resultado.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/12/2008 12:51:13
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20557
Localização: Curitiba/PR
Offline
|
Sim, eu sei, mas não custa reforçar e reforçar...
Contar com isso é, como dizemos em C++, contar com o "realm of undefined behavior".
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/12/2008 13:18:37
|
ramilani12
GUJ Master
![[Avatar]](/images/avatar/b597460c506e8e35fb0cc1c1905dd3bc.png)
Membro desde: 11/03/2005 01:23:30
Mensagens: 1944
Localização: Curitiba-PR
Offline
|
Rodei em algumas plataformas:
Windows XP - SP3 - 3 gb RAM:
jdk 1.5_16 - SUN
IBM - AIX -
jdk: Java(TM) 2 Runtime Environment, Standard Edition (build pap64dev-20080315 (SR7))
IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 AIX ppc64-64 j9vmap6423-20080315 (JIT enabled)
Mal rodou:
Estorou a heap
Windows XP - SP3 - 3 gb RAM:
jdk: Bea JRockit - 1.5.12
Interessante que rodando pela JRE da bea foi mais rápido que jdk da sun....
|
my delicious| follow me| linkedin |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/12/2008 13:20:23
|
Marck
Virtual Machine Man
![[Avatar]](/images/avatar/efc9ea3e0c2ed2c2481fe1252019266e.jpg)
Membro desde: 15/08/2006 16:15:11
Mensagens: 598
Offline
|
Rodei o programa e na minha JVM o GC fez bem seu trabalho!
Então, existe coleta dentro de um pool de strings mas depende da implementação da JVM!
Muito obrigado pelas respostas.
|
"A vida me deu tudo que eu pedi. Agora se o que eu pedi foi pouco, ai o problema já é meu!". Sartre
Besteiras sobre programação
http://toobject.wordpress.com/
DataModelDinamic |
|
|
 |
|
|