Compartilhar via


Solucionando problemas de exceções: sistema.OutOfMemoryException

An OutOfMemoryException exceção é lançada quando uma tentativa de alocar memória falha.

Dicas associadas

  • Se você estiver criando uma matriz, certifique-se que o dimensionar está correto.
    Para obter mais informações, os usuários do Visual Basic poderão ver Matrizes no Visual Basic.

    Para obter mais informações, os usuários do translation from VPE for Csharp poderão ver Matrizes (Guia de programação do C#).

  • Certifique-se de que ter memória suficiente para fins internos e novos objetos gerenciado.
    Se você está programando no .NET Compact Framework, o common linguagem tempo de execução lança essa exceção quando não há memória suficiente para fins internos ou novos objetos gerenciado. Para evitar a exceção, evite programação de grandes métodos que consumam mais de 64 kilobytes de memória.

Comentários

O uso excessivo de memória gerenciada normalmente é causada por:

  • Leitura de grandes conjuntos de dados na memória.

  • Criação de entradas de cache excessivas.

  • Carregar ou baixar arquivos grandes.

  • Uso excessivo de expressões regulares ou strings ao analisar arquivos.

  • Uso excessivo de estado da exibição (view state).

  • Muitos dados no estado da sessão ou muitas sessões.

Essa exceção pode ser lançada com uma mensagem adicionais, " Not enough storage is available to complete this operation, " ao chamar um método em um objeto COM que retorna um tipo definido pelo usuário que contém uma matriz segura (uma matriz de tamanho não fixo).Isso ocorre porque o .NET Framework não pode empacotar uma estrutura de campo com um tipo de matriz segura.

Consulte também

Tarefas

Como: Descubra mais sobre uma exceção com Assistente de Exceção

Como: Declare uma variável de matriz

Referência

OutOfMemoryException