Я пишу многопоточное приложение, которое полагается на некоторые сторонние библиотеки DLL. Моя проблема заключается в том, что при использовании объекта из сторонней библиотеки, если он вызывает исключение во время работы, я не могу его поймать, он пузырится и убивает все приложение. У меня много разных потоков, каждый из которых использует свой собственный объект из этой сторонней библиотеки, и мне нужен поток, который использует эту копию объекта, чтобы иметь возможность поймать и обработать исключение.
Основываясь на том, что я читал, похоже, что, скорее всего, сторонняя библиотека фактически создает свои собственные потоки и разрешает неперехваченные исключения. Поведение .NET 2.0+ позволяет этим исключениям убивать все приложение. Я знаю об AppDomain.CurrentDomain.UnhandledException, но это не позволяет вам отключить завершение работы приложения.
Для справки, я пишу консольное приложение в .NET 4.0. Есть ли у кого-нибудь решение или совет, чтобы остановить эти исключения от убийства моего приложения?