Вопрос

Похожие:


Если метод генерирует исключения, которые вызываются методом ThreadPool.QueueUserWorkItem, где будет сгенерировано исключение?или это просто съедят?

Я имею в виду, что это никогда не будет выброшено в вызывающий поток, верно?


Это было полезно?

Решение

НЕТ, исключение никогда не будет распространяться на другой поток.В конечном итоге это приведет к сбою потока и будет перехвачено средой выполнения.На этом этапе среда выполнения вызывает AppDomain.Событие необработанного исключения, при котором может наблюдаться исключение.

Вы можете прочитать об этом подробнее здесь.

Другие советы

Исключение приведет к сбою вашего приложения, если оно не будет перехвачено внутри вашего обратного вызова потока (за исключением ThreadAbortException и AppDomainUnloadedException, которые проглатываются).Обратите внимание, что в .NET 1.1 все исключения были проглочены.Поведение было изменено в .NET 2.0.

Я нашел эту ссылку: http://msdn.microsoft.com/en-us/library/ms228965.aspx

Необработанные исключения приведут к остановке приложения в версии .Net 2.0 или выше.Исключение из кода QUWI не будет перехвачено или передано в другой поток.

Смотрите , например ,https://blog.codinghorror.com/improved-unhandled-exception-behavior-in-net-20/

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top