| Autor |
Mensagem |
|
|
qual sua definição para gerenciar? desculpe-me a pergunta ^^
obs: quando digo 'dados estaticos', é com garantia que não serao modificados, apenas referenciados por outros objetos.
|
 |
|
|
Os Map não espandem pois são dados estaticos, para dados dinamicos possuo outros Map (exemplo: lista de clientes conectados)
O sistema funciona assim:
-Inicio do sistema, carrego os dados em Map estaticos
-Sistema em standby aguardando a conexão de algum cliente
caso algum cliente conecte:
-cliente conecta
-Inicia uma thread para o cliente
-cliente executa suas ações, comunicação via sockets
-cliente desconecta, caso o cliente criou alguma thread, todas sao finalizadas
Porem apenas iniciando o sistema, sem nenhuma conexão (certeza!), o mesmo apresenta esse grafico, e como pode ver deixei ele parado por mais de 1h.
|
 |
|
|
juliocbq wrote:
Você não espera que o gc libere automáticamente uma coleção de maps que estão referenciados em memória né!? Verifica se eles ainda estão alocados. Talvez você esteja adicionando nos maps e não está gerenciando o tamanho dele. Isso aí é um memory leak.
Correto, porem os maps são estaticos.
asaudate wrote:Pra fazer o que o juliocbq está falando, você pode usar o JProfiler. Vai ser mais eficiente que o profiler do Netbeans
[]'s
Blz, vou testar aqui.
|
 |
|
|
Ocupar um espaço da memoria blz, pq tenho varios Map, o que me chama a atenção é o gasto alto de memoria em standby, pq chega uma hora ke acaba alocando toda a memoria e ocasiona uma exceção.
E estou rodando em uma jvm standalone.
|
 |
|
|
|
certeza, os sockets estao configurados pra trabalhar em blocking, tenho uma flag indicando qdo recebe alguma informação. E como assim aplicou algum profiler? Se quer dizer usar o profiler do netbeans, por exemplo, apresenta o mesmo grafico.
|
 |
|
|
Boa tarde, o titulo ja diz tudo, o sistema possui apenas 3 threads ativas (ServerSocket) que ficam aguardando a conexão de um cliente. O grafico abaixo mostra o sistema rodando por uma hora sem nenhuma atividade. Alguem saberia me explicar o que pode estar acontecendo?
Grato pela atenção
|
 |
|
|
|
descobri o problema... faltava setar no 'resultado' os vinculos (enquete e pergunta), o id da enquete ta ok, o problema é como setar o id da resposta se o mesmoo é um iterador da lista?
|
 |
|
|
Não seria por causa disso aqui, no servidor o banco de dados seria local?remoto?
|
 |
|
|
do mesmo jeito que vc retorna uma lista com varios itens... retorne uma lista com apenas 1 objeto Como foi dito antes... pq não dar uma melhorada no codigo, recomendo usar o Hibernate, implemente um DAO... vai facilitar sua vida uns 150%.
|
 |
|
|
Boa tarde pessoal,
Estava eu lendo uns tutoriais e tal até que resolvi colocar em pratica, surgiu uma duvida que não imagino nem como pesquisar isso no forum.
Tenho o seguite codigo:
Ele popula uma lista de perguntas de uma enquete, com o seguinte formato:
O valor selecionado de uma resposta e do comentario eu preciso armazenar em uma tabela(Resultado), ai vem a duvida, comofaz?
Obrigado a todos pela atenção
|
 |
|
|
|
opa resolve sim... mto obrigado
|
 |
|
|
Boa tarde,
Gostaria de saber se é possivel ao executar um update atualizar apenas os dados alterados pois no banco de dados tenho um trigger que ao ser alterado certos campos de uma tabela grava uma nova alteração e como o hibernate atualiza todos os campos, esta gerando dados invalidos.
Obrigados a todos pela atenção.
|
 |
|
|
|
correto... segunda feira finalizo... faço os testes e posto os resultados...
|
 |
|
|
Ja tinha pensado nisso... ai o que fiz.... cada arquivo carrego linha a linha em um List... a linha não é extensa deve ter uns 50 caracteres no maximo.... o tempo de processamento é entre 0.1s a 6s... por isso quero processar tudo ao mesmo tempo...
Imagina um arquivo com 1000 linhas (1000x6) no pior tempo 6000s - 100m - 1h40, sendo que mesmo que processe tudo ao mesmo tempo e demore 5~10min para todas threads finalizarem ... continua compensando
|
 |
|
|
Bom dia,
Estava pensando se é possivel fazer a seguinte parada:
Tenho uma thread (A) que le uma lista de arquivos, para cada arquivo ele processa sua linhas, seria possivel eu criar uma thread (B) para processar 1 arquivo com uma thread (C) que processe 1 linha. Exemplo:
Tenho 10 arquivos com 20 linhas cada, na thread(A) principal seriam criadas 10 threads(B) e cada uma dessas criariam 20 threads(C), processando tudo ao mesmo tempo.
É possivel fazer esse rolo? alguma dica?
EDIT:
Tava me esquecendo, para cada thread(B) tenho que salvar o retorno das threads(C) em um arquivo.
Obrigado pela atenção pessoal.
|
 |
|
|