Tenemos una interfaz IPoller para la que tenemos varias implementaciones. Tenemos un proceso que tomará un IPoller y lo iniciará en un hilo separado. Estoy tratando de encontrar una forma genérica de proporcionar manejo de excepciones para cualquier IPollers que no lo haga por sí mismo.¿Qué sucede cuando un subproceso de .NET arroja una excepción?
Mi idea original era crear una implementación de IPoller que aceptara un IPoller y solo proporcionara alguna funcionalidad de registro. La pregunta que encontré es cómo voy a proporcionar este manejo de errores? Si tengo IPoller.Start() que es el objetivo para el subproceso, ¿dónde se producirá la excepción? ¿O hay algo en el hilo en el que puedo engancharme?
Es posible que también desee capturar el AppDomainUnloadedException. MSDN: se lanza un AppDomainUnloadedException en un subproceso porque el dominio de aplicación en el que se está ejecutando el subproceso se está descargando. –