سلام
دوستان ، در async await (و کلا در زمانی که درون نخ جدیدی هستیم) ، مدیریت استثناء ها چجوری هه؟

مقاله زیر را یه نگاه بسیار گذرا کردم و فرضا کدی شبیه اونچه نوشته بود نوشتم اما خطا ، مدیریت نمیشه :

Exception handling (Task Parallel Library) | Microsoft Learn

C#‎‎‎‎ - What is the best way to catch exception in Task? - Stack Overflow


void ExceptionHandler(Task task)
{
MessageBox.Show(task.Exception.Message);
}




private async void MethodAsync()
{
Task fibonacciTask = Task.Factory.StartNew(() => { throw new Exception("Test"); });
//await fibonacciTask.ContinueWith(new Action<Task>(this.ExceptionHandler),
// TaskContinuationOptions.OnlyOnFaulted);


try
{
await fibonacciTask;
}
catch (AggregateException e)
{
MessageBox.Show(e.Message);
}
}




void ExceptionHandler(Task task)
{
MessageBox.Show(task.Exception.Message);
}




private async void MethodAsync()
{
Task fibonacciTask = new Task(() => { throw new Exception("Test"); });
fibonacciTask.ContinueWith(new Action<Task>(this.ExceptionHandler),
TaskContinuationOptions.OnlyOnFaulted);


try
{
fibonacciTask.Start();
await fibonacciTask;
}
catch (AggregateException e)
{


}
}



در کد دوم هم که میگه با پارامتر TaskContinuationOptions.OnlyOnRanToCompletion ئه متد ContinueWith میتونیم مدیریت کنیم ، باز هم فرقی نکرد .
در کد بالا ، بجای await fibonacciTask ، از متد Await هم طبق کد لینک اول گذاشتم ، باز هم فرقی نکرد .

من با .NetFramework 4.6.2 کار میکنم .
الان اونچه در اون لینک ها گفتن ، کار میکنه؟ یا برای من یا برای نسخه ی دات نت فریم وورک هست؟

تشکر