Compartilhar via


Falhas de alinhamento

O manipulador de falha de alinhamento do sistema é desativado por padrão em sistemas baseados em Itanium. Portanto, qualquer acesso a dados não assinados gera uma exceção que não será corrigida automaticamente pelo sistema, a menos que o aplicativo capture a exceção em um manipulador de exceção baseado em quadro. Para habilitar o usuário com falha de alinhamento do sistema, chame a função SetErrorMode com SEM_NOALIGNMENTFAULTEXCEPT. No entanto, observe que os processos poderão ter uma degradação de desempenho grave se o manipulador de falha de alinhamento do sistema estiver habilitado e o processo gerar falhas de alinhamento.

Se o depurador WinDbg tiver sido instalado como o depurador do sistema, o WinDbg será iniciado automaticamente se qualquer processo no sistema gerar uma exceção sem tratamento. Se você não tiver um depurador instalado como depurador do sistema, o sistema exibirá uma caixa de diálogo informando que seu aplicativo encontrou um erro e oferecendo a oportunidade de relatar o problema à Microsoft.

Em sistemas x64 e ARM64, todas as falhas de alinhamento são tratadas por uma combinação de hardware e software. Para obter o melhor desempenho, todo o acesso à memória deve estar alinhado corretamente. Além disso, o acesso de variável interligada não assinado deve ser evitado no ARM64, pois essas operações não são atômicas.