这是一个奇怪的场景,但我有Task
处于未知状态。我想做的是能够成为Faulted
然后导致Application.UnhandledException
。而不是TaskScheduler.UnobservedTaskException
如果我不管它会发生什么。
await task
确实有效,但是此代码需要在.NET 4中运行,而不需要任何额外的依赖项。所以本质上我需要重新创建await
任务的效果。
task.ContinueWith(t => {
throw new InvalidOperationException();
},
CancellationToken.None,
TaskContinuationOptions.OnlyOnFaulted | TaskContinuationOptions.ExecuteSynchronously,
SynchronizationContext.Current != null ? TaskScheduler.FromCurrentSynchronizationContext() : TaskScheduler.Current
);
上面的代码目前似乎没有做任何事情。
有什么想法吗?