Compartilhar via


Gerenciamento de exceções sem tratamento em amostra de threads da interface do usuário secundária

Este exemplo demonstra como gerenciar exceções sem tratamento que são lançadas no secundário interface do usuário (UI) threads.

Este exemplo demonstra um recurso específico da Windows Presentation Foundation e, consequentemente, não segue boas práticas de desenvolvimento de aplicativos. Para ver uma cobertura abrangente de boas práticas de desenvolvimento de aplicativos Windows Presentation Foundation (WPF) e Microsoft .NET Framework, consulte os seguintes itens conforme adequado:

Acessibilidade - Práticas recomendadas de Acessibilidade

Localização - Visão geral de globalização e localização do WPF

Desempenho-Optimizing WPF Application Performance

Segurança - Windows Presentation Foundation Security

Download sample

O exemplo de criação

  • Instale o Windows Software Development Kit (SDK) e abra sua janela de comando de ambiente de compilação. No menu Iniciar, aponte para Todos os Programas, Microsoft Windows SDK e clique em Shell CMD.

  • Baixe o exemplo, geralmente da documentação do software development kit (SDK), para a unidade de disco rígido.

  • Para compilar o exemplo na janela de comando do ambiente de compilação, vá para o diretório fonte do exemplo. Na prompt de comando, digite MSBUILD.

  • Para compilar o exemplo em Microsoft Visual Studio, carregue a solução de exemplo ou o arquivo de projeto e, em seguida, pressione CTRL+SHIFT+B.

Executando o exemplo

  • Para executar o exemplo compilado na janela de comandos do ambiente de compilação, execute o arquivo .exe na pasta Bin\Debug ou Bin\Release contida na pasta de código-fonte do exemplo.

  • Para executar o exemplo compilado com a depuração no Visual Studio, pressione F5.

Comentários

Autônomo ou hospedado por navegador WPF os aplicativos usam o Application classe para detectar exceções sem tratamento (consulte DispatcherUnhandledException). No entanto, Application só pode detectar exceções sem tratamento que são lançadas mesmo thread que o Application classe está sendo executado. Normalmente, um aplicativo terá um principal interface do usuário (UI) thread, isso o comportamento de detecção de exceção sem tratamento das Application classe é adequada. No entanto, as exceções sem tratamento que são lançadas em secundário thread s não são automaticamente detectadas pelo Application classe principal UI thread.

Este exemplo demonstra como passar exceções sem tratamento do secundário UI s thread ao principal UI thread, onde pode ser detectadas pela Application objeto. Isso é conseguido por meio da detecção de exceções sem tratamento no secundário UI thread e usando o Dispatcher para encaminhá-los a principal UI segmento. Sobre o principalUI segmento, eles serão relançados para que o Application objeto pode detectá-los.

ObservaçãoObservação:

Um secundário UI um thread secundário, que exibe é UI.

Consulte também

Tarefas

Gerenciamento de exceções sem tratamento no secundário Worker Threads exemplo

Conceitos

Modelo de Threading