I know how unpackaged exceptions are handled when using Task s, only throwing the unhandled exceptions into the finalizer if the user code has not "noticed" it yet.
I also know how an unhandled exception in an asynchronous stream (e.g., Action.BeginInvoke() ) is caught and re- Action.EndInvoke() on a connecting call (e.g., Action.EndInvoke() ).
What I do not understand is how it is not a process failure?
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 ); }
Tyson
source share