AggregateException原因:しかし私はREPROとしていくつかの簡単なコードを持っている
var taskTest = Task.Factory.StartNew(() =>
{
System.Threading.Thread.Sleep(5000);
}).ContinueWith((Task t) =>
{
Console.WriteLine("ERR");
}, TaskContinuationOptions.OnlyOnFaulted);
try
{
Task.WaitAll(taskTest);
}
catch (AggregateException ex)
{
foreach (var e in ex.InnerExceptions)
Console.WriteLine(e.Message + Environment.NewLine + e.StackTrace);
}
を、私は、try catchブロックにスローされる予期しないTaskCanceledExceptionを取得しています(それがでますAggregateException InnerExceptionsオブジェクト)。 "タスクがキャンセルされました"。
なぜこの例外が発生しますか?タスクの継続は発生しません。例外は発生しませんでしたが、まだ待機中に集計例外が発生します。
私はこのことがどういう意味なのか説明できますか?
私はあなたとまったく同じシナリオを持っていました。私は以前の仕事の結果を代わりに伝えることがよりエレガントで直感的だったと思います。 TaskCanceledExceptionをスローするとかなり驚きました... – NickL