如何处理 TaskCanceledException?
How to handle TaskCanceledException?
我有一个 xamarin 应用程序,它使用插件进行媒体访问 select 或拍照。
在我的中继命令中我有这个:
try
{
var mediaFile =
await
_mediaPicker.SelectPhotoAsync(new CameraMediaStorageOptions());
using (var memoryStream = new MemoryStream())
{
mediaFile.Source.CopyTo(memoryStream);
...do image stuff here
}
}
catch (TaskCanceledException taskCanceled)
{
Debug.WriteLine(taskCanceled.Message);
}
有没有更好的方法来处理一般的任务取消异常? SelectPhotoAsync 不采用取消标记。这里可以空抓吗?用户取消操作完全没问题。
谢谢。
一般来说,你应该抓住 OperationCanceledException
而不是 TaskCanceledException
。除此之外,您的方法看起来不错;处理异常的正确方法是捕获它。
我有一个 xamarin 应用程序,它使用插件进行媒体访问 select 或拍照。
在我的中继命令中我有这个:
try
{
var mediaFile =
await
_mediaPicker.SelectPhotoAsync(new CameraMediaStorageOptions());
using (var memoryStream = new MemoryStream())
{
mediaFile.Source.CopyTo(memoryStream);
...do image stuff here
}
}
catch (TaskCanceledException taskCanceled)
{
Debug.WriteLine(taskCanceled.Message);
}
有没有更好的方法来处理一般的任务取消异常? SelectPhotoAsync 不采用取消标记。这里可以空抓吗?用户取消操作完全没问题。
谢谢。
一般来说,你应该抓住 OperationCanceledException
而不是 TaskCanceledException
。除此之外,您的方法看起来不错;处理异常的正确方法是捕获它。