que tiene el siguiente código del libro "Programación Concurrente en Windows":¿Por qué CLR vuelve a lanzar ThreadAbortException?
void Main()
{
try
{
try
{
Console.WriteLine("Inside Main Method");
Thread.CurrentThread.Abort();
}
catch(ThreadAbortException)
{
Console.WriteLine("Inside First Catch");
// Trying to swallow but CLR throws it again....
}
}
catch(ThreadAbortException)
{
Console.WriteLine("Inside Second Catch");
//Thread.ResetAbort();
}
}
Estoy interesado en saber qué tan CLR re-lanza el ThreadAbortException? Y lo sigue haciendo hasta que llamo "Thread.ResetAbort()". En segundo lugar, ¿hay alguna otra excepción definida por el sistema, que reciba un tratamiento especial de CLR?
También tenga en cuenta que el código que llama a Thread.ResetAbort() necesita un permiso especial para poder hacerlo. Por lo tanto, si aloja CLR o crea un AppDomain, puede usar esta característica para hacer que los hilos abortivos sean más deterministas. – Konstantin