Почему исключения AppDomain неизменно завершают работу приложения?

Это связано спредыдущий вопрос

Что я'Теперь я пытаюсь понять, почему исключение потока пользовательского интерфейса может быть предотвращено при завершении приложения, в то время как исключения не-пользовательского интерфейса могут 'т быть

Для справки см.этот пример.

Самое главное, что я хотел бы иметь возможность сделать в этом случае "молча» завершить процесс - без отображения диалогового окна Windows, которое спрашивает,Я хотел бы отправить сообщение об ошибке или нет.

Это мой AppDomain UnhandledExceptionHandler:

private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{            
    try
    {
        // Maybe do some logging here if allowed
    }
    catch
    {
    }

    // then just terminate the application
    Application.Exit();            
}

ОБНОВИТЬ

В свете комментариев вэтот ответЯЯ хотел бы уточнить, что самое главное, яЯ хотел бы узнать больше о механизме, который позволяет потоку пользовательского интерфейса иметь раннюю возможность ловить необработанные исключения черезApplication.ThreadException механизм. И может ли такое поведение быть реализовано в потоке без пользовательского интерфейса.

Ответы на вопрос(3)

Ваш ответ на вопрос