Exceções em threads ThreadPool
-
03-07-2019 - |
Pergunta
Relacionado:
Se um método lança uma exceção que é chamado pelo método ThreadPool.QueueUserWorkItem onde vai a exceção ser jogado? ou vai apenas ser comido?
I significa que nunca será lançada sobre o direito segmento de chamada?
Solução
NO, a exceção nunca propagar para outro segmento. Ele acabará por falhar o fio, e ser apanhado pelo tempo de execução. Neste ponto, o tempo de execução gera o evento AppDomain.UnhandledException onde pode ser observada a exceção.
Você pode ler mais sobre este aqui .
Outras dicas
A exceção irá falhar a sua candidatura se não estiver preso dentro de seu retorno thread (exceto para ThreadAbortException e AppDomainUnloadedException que são engolidos). Note-se que em .NET 1.1 todas as exceções foram engolidos. O comportamento foi alterado no .NET 2.0.
Eu encontrei este link: http://msdn.microsoft.com/ en-us / library / ms228965.aspx
Exceções sem tratamento vai trazer para baixo o aplicativo em .Net 2.0 ou superior. A exceção a partir do código QUWI não vai ser pego ou transferidos para outro segmento.
Veja por exemplo https://blog.codinghorror.com/improved-unhandled -exception-comportamento-in-net-20 /