private async Task OnAsync() { Debug.Assert(UIContext.CheckAccess()); await Task.Delay(100); Debug.Assert(UIContext.CheckAccess()); throw new InvalidOperationException("Error on async execute."); }
private Task OnTaskRun() { return(Task.Run(() => { Debug.Assert(!UIContext.CheckAccess()); Thread.Sleep(100); throw new InvalidOperationException("Error on a background Task."); })); }
private void OnUIContextRun() { Task.Run(() => { Debug.Assert(!UIContext.CheckAccess()); Thread.Sleep(100); UIContext.Run(new Action(() => { Debug.Assert(UIContext.CheckAccess()); Thread.Sleep(100); throw new InvalidOperationException("Error on a background Task."); })).ObserveException(); }).ObserveException(); }
private void OnExecute() { Debug.Assert(UIContext.CheckAccess()); throw new InvalidOperationException("Error on execute."); }