DA0010: função GetHashCode dispendiosa
Identificação da Regra |
DA0010 |
Categoria |
uso do .NET Framework |
Analisando métodos |
Preparação de exemplos Memória de .NET |
Message (Mensagem) |
As funções de GetHashCode devem ser baixo e não atribuir nenhuma memória.Reduzir a complexidade da função de código de hash se possível. |
Tipo de mensagem |
Aviso |
Causa
Chamadas para o método de GetHashCode de classificação são uma proporção significativa de dados de perfil ou o método aloca memória.
Descrição da Regra
O hash é uma técnica para localizar rapidamente um item específico em uma grande coleção.O como tabelas de hash pode ser muito grande e oferecem suporte a muito altas taxas de acesso, tabelas de hash deve ser muito eficiente.Uma implicação deste requisito é que os métodos de GetHashCode no.NET Framework não precisam alocar memória.Alocar memória aumenta a carga do coletor de lixo e expõe o método a atrasos em potencial se torna necessário executar a coleta de lixo no resultado da solicitação de alocação.
Como Corrigir Violações
Reduzir a complexidade do método.