Por que os programas (JVM) travam enquanto ainda há muito espaço disponível no arquivo de paginação?

1

Então, pergunta muito simples, de fato. Com minha máquina dev RAM-limitada (8GB de RAM, Win 7 x64, 8GB de arquivo de paginação), quando eu ficar sem RAM disponível, os programas primeiro começam a abrandar e, eventualmente, falhar. Na maioria das vezes, a JVM falha primeiro e muito feliz. Como isso é possível? É como se não houvesse nenhum arquivo de paginação, mas quando eu acertei o 8º gig de RAM usada, a JVM (e às vezes outros programas também) travou quase instantaneamente.

Sim, eu conheço muito bem todos os mecanismos de paginação instalados principalmente pelo HW, que mais uma vez deve trabalhar com o arquivo de paginação como se houvesse RAM disponível sem saber nada sobre o arquivo de paginação usado ou mesmo existente. Então, por que eu realmente observo um comportamento muito diferente?

    
por user32569 19.05.2015 / 22:19

1 resposta

0

Você pode executar o jprofiler e investigar a memória heap. Também não está claro o requisito de memória para o programa java em execução. Geralmente, 8 GB de RAM são considerados decentes. Se o programa java estiver criando lote de encadeamento e os encadeamentos não forem finalizados, isso poderá causar todos esses problemas. Por favor, verifique o programa java para a quantidade de objeto criado e natureza de segmentação.

    
por 22.05.2015 / 13:58