title: Catch unhandled exceptions from async
body: <p>When an <code>async</code> method that is awaited upon throws an exception, the exception is stored somewhere and throwing it is delayed. In a WinForms or WPF application, it uses <code>SynchronizationContext.Current</code> to post throwing of the exception. However, in e.g. a console application, it throws the exception on a thread pool and it brings down the application.</p>
  
  <p><strong>How can I prevent exceptions thrown from an <code>async</code> method from bringing down the application?</strong></p>
  
  <p><strong>EDIT:</strong></p>
  
  <p>Appearantly the issue I'm describing is because I have <code>void</code> <code>async</code> methods. See comments.</p>