O que é Out of Memory?

Saiba tudo que está por trás do out of memory nesse artigo.
Tempo de Leitura: 3 minutos

Você já viu o erro out of memory? Sabe como Resolver? A Tecnospeed, melhor fornecedora de APIs para software houses vai te explicar tudo sobre.


O Out Of Memory é um erro comumente relacionado ao Windows que é um grande desafio para desenvolvedores de software, principalmente os que atuam em aplicações que processam alta carga de requisições. Normalmente, este erro ocorre quando a aplicação consome mais memória que o limite máximo permitido pelo sistema operacional para o processo.

Como e por que este erro “Out of Memory” ocorre?

Nas aplicações 32 bits o limite máximo de consumo de memória permitido para um processo é de aproximadamente 2GB. Caso a aplicação se aproxime deste valor o Windows levanta uma exceção de Out Of Memory, obrigando que o software seja reiniciado para não comprometer o funcionamento do sistema.

Outro fator que pode causar este erro é o uso da memória aplicação de maneira incorreta. Neste caso o software constantemente instancia e destrói vários objetos, causando problemas de fragmentação da memória. Após isso o Windows também não consegue liberar a memória de maneira correta, causando o estouro de memória.

Um outro caso onde este erro ocorre é quando a memória da máquina é insuficiente para a execução de todos os processos. Inicialmente a aplicação começa a reportar erros de “Insufficient Memory For This Operation”, seguidos por erros de “Out Of Memory”.

Em resumo, alguns cenários que podem causar este problema são:

  • Instanciar objetos e não liberá-los da memória: isso pode acontecer quando um objeto é criado, mas não é descartado quando não é mais necessário. Isso pode levar a um acúmulo de objetos na memória, que podem eventualmente esgotar o espaço disponível.
  • Instanciar e destruir objetos a todo momento: isso pode acontecer quando um aplicativo está constantemente criando novos objetos e descartando-os. Isso pode colocar uma pressão significativa na memória, especialmente se os objetos forem grandes ou complexos.
  • Pouca memória disponível na máquina: isso pode acontecer se o aplicativo estiver executando em um ambiente com pouca memória. Nesse caso, mesmo um pequeno número de objetos pode levar a um erro de out-of-memory.

Como evitar este problema?

  • Sempre que instanciar um objeto, tenha certeza que o mesmo será finalizado. Isso pode ser feito usando o método finalize() da classe Object. No entanto, é importante notar que o método finalize() não é garantido que seja chamado pelo coletor de lixo.
  • Nunca crie várias vezes o mesmo objeto que será utilizado. Se possível, utilize padrões de projeto como Singleton ou Pools de Objetos.
  • Evite a fragmentação da memória. A fragmentação da memória ocorre quando o coletor de lixo libera pedaços de memória pequenos e dispersos. Isso pode dificultar a alocação de memória para novos objetos.
  • Crie aplicações cuja arquitetura seja escalável. Toda aplicação possui um limite máximo de memória que pode ser alocada. Para evitar o erro de out-of-memory, é importante criar aplicações que possam ser dimensionadas para atender a uma demanda crescente.
  • Utilize componentes que possuam uma boa gestão de memória. Existem muitos componentes disponíveis que podem ajudar a gerenciar o uso de memória do aplicativo. Esses componentes podem ajudar a evitar o erro de out-of-memory e melhorar o desempenho do aplicativo.

Como e por que este erro ocorre?

Se você é leigo no assunto, está enfrentando sobrecarga do sistema e não sabe o que é “instanciar”. Calma, logo abaixo vamos te apresentar um “truque” para resolver o seu problema de imediato.

A sobrecarga aconteceu, e agora?

Quando o seu computador trava de forma constante, significa que a sua máquina não consegue processar a quantidade de informações que você demanda dela. 

Nesses casos, é possível identificar quais são os programas que mais consomem a sua máquina. Fechá-lo ou até mesmo, desinstalá-lo, é uma alternativa que pode melhorar momentaneamente o desempenho da sua máquina.

Abaixo, mostraremos como acessar o gerenciador de tarefas:

Primeiro aperte o atalho Ctrl-Alt-Del, essa janela irá aparecer:

Veja como burlar o erro out of memory no seu computador.

O gerenciador de tarefas pode resolver, temporariamente, a sobrecarga de memória do seu computador.

Agora ficou fácil, você consegue identificar quais são os programas que estão consumindo mais memória. Quanto mais no topo, maior é o consumo de memória.

Clique com o botão direito do mouse em cima do software que mais gera sobrecarga do sistema, clique em “Finalizar Tarefa”. Feito isso, o Windows vai tentar “matar” o programa que está consumindo memória. 

Na maioria das vezes ele será finalizado, porém, em alguns momentos, pode vir a dar mais trabalho ou até mesmo, não fechar. Nesse caso, o melhor será desinstalar o programa ou então, juntar um dinheiro para trocar a máquina.

Esperamos ter ajudado de imediato. Para mais conteúdos como esse, assine a nossa newsletter:


Gabriel Serra
Gabriel Serra
Formado em Marketing, redator do Grupo TecnoSpeed.

Comments are closed.

Pular para o conteúdo