1.主线程异常
2. 子线程异常 (Task Thread BackgroundWorker)
Task 异常 上述两种异常都没有拦截到 , 可以通过observation
Thread 异常 非UI线程捕获到的
backgroundWorker 上述两种异常都没有拦截到 ,因为backgroundWorker 内部会捕获 。需要在内部判断,内部抛出后在上层可以 通过 UI线程异常捕获到
completed 之后交给主线程执行
3. Dispatcher.Invoke, 是自线程里面,把代码交给子线程处理