Mais uma dúvida sobre sockets....[RESOLVIDO]  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20581
Localização: Curitiba/PR
Offline

E aquele profiler? Rodou?

@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
[WWW]
Jedi_FeniX
Virtual Machine Man
[Avatar]

Membro desde: 26/04/2007 14:32:30
Mensagens: 586
Offline

Na verdade eu uso o while, com o iterator.hasNext()....

www.bau-de-dev.com
Jedi_FeniX
Virtual Machine Man
[Avatar]

Membro desde: 26/04/2007 14:32:30
Mensagens: 586
Offline

Consegui rodar o profiler não....
Conversando com o dyorgio verifiquei que um dos erros era o ArrayBlockingQueue, que fica travando o apllicativo.

www.bau-de-dev.com
dyorgio
JavaEvangelist
[Avatar]

Membro desde: 05/05/2005 20:03:20
Mensagens: 323
Localização: Porto Alegre - RS
Offline

usei isEmpty
e percorra o próprio array list ao invés do iterator dele

I can fly!!!
[Email] [MSN]
Jedi_FeniX
Virtual Machine Man
[Avatar]

Membro desde: 26/04/2007 14:32:30
Mensagens: 586
Offline

Fiz de uma outra maneira que acabou dando certo. Em vez de colocar 2 threads para gerenciar esta parte coloquei tudo em um thread só, aonde, ela pega os registro do banco e envia as linhas em forma de thread, deu certo e o bom que fiquei com menos thread para a JVM gerenciar...heheh

www.bau-de-dev.com
dyorgio
JavaEvangelist
[Avatar]

Membro desde: 05/05/2005 20:03:20
Mensagens: 323
Localização: Porto Alegre - RS
Offline

Blz cara,
qeum bom que funcionou,
se vc puder colocar qual era o problema certinho
ai tira a nossa curiosidade
Abs,

I can fly!!!
[Email] [MSN]
Jedi_FeniX
Virtual Machine Man
[Avatar]

Membro desde: 26/04/2007 14:32:30
Mensagens: 586
Offline

O problema era no ArrayBlockingQueue mesmo, tirei o ArrayBlockingQueue e coloquei um ArrayList e para controlar o tamanho do array eu chamo um ArrayList.size() e vejo quantos elementos eu tenho no Array,
Outra coisa que eu fiz também foi mudar Executros.newFixedPoolThread, para Executors.newCachedPoolThread e tirei 2 threads, uma que controlava a data e a outra que controlava o request, ficou tudo em uma classe, diminuindo assim um pouco a "porrada" na jvm. Esta foi uma das dicas que o ViniGodoy deu a um tempo atrás.
Agradeço a ajuda de todos.

www.bau-de-dev.com
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team