首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SendAsync与CancellationToken

SendAsync与CancellationToken
EN

Stack Overflow用户
提问于 2016-09-25 10:45:09
回答 2查看 2.5K关注 0票数 1

我在查看我的旧项目的代码时发现:

代码语言:javascript
复制
private async void send(HttpRequestMessage request, CancellationToken cancellationToken)
{
    HttpResponseMessage response = await _client.SendAsync(request, cancellationToken);
    //...
}

我想知道取消的时候会发生什么?

会有什么反应?

在此之后,我是否需要调用ThrowIfCancellationRequested,还是它本身会引发异常?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-09-25 11:11:26

我想知道取消的时候会发生什么?

标准图案将取消返回的任务。这将导致await引发一个OperationCanceledException

会有什么反应?

不会出现响应对象,因为异常在此之前抛出。

票数 3
EN

Stack Overflow用户

发布于 2016-09-25 10:48:26

你得这样称呼它

代码语言:javascript
复制
...
cancelToken.ThrowIfCancellationRequested();
HttpResponseMessage response = await _client.SendAsync(request, cancellationToken);
...

然后,当您请求取消时,它将抛出OperationCanceledException类型的异常。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39685965

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档