Я знаю, как необработанные исключения обрабатываются при использовании Task
s, только бросая необработанное исключение в финализатор, если пользовательский код не 'соблюдался ' это еще.
Мне также известно, как необработанное исключение в асинхронном потоке (например, Action.BeginInvoke ()
) перехватывается и повторно генерируется при соединительном вызове (например, Action.EndInvoke ()
).
Но я не понимаю, как это не приводит к сбою процесса?
static void Main(string[] args)
{
var timer = new System.Timers.Timer() {Interval = 100};
timer.Elapsed += (o, e) => { throw new Exception(); };
timer.Start();
Console.ReadKey( true );
}