如何通过.NET的Cancellation Framework有效地取消一个长尾并行任务?
- 内容介绍
- 文章标签
- 相关推荐
本文共计940个文字,预计阅读时间需要4分钟。
在 .NET 4.0 中,引入了一个新的取消令牌类。这个类在基本层面上集成了我们常用的取消操作方式,在并发任务中非常有用。同步模式下的取消操作:一种常见的需要支持取消功能的场景。
在.net 4.0中,引入了一个新的类CancellationToken,这个类基本上集成了我们各种常用的取消方式,在并发任务中非常有用。
同步模式下的取消:
一种比较常见的需要支持取消功能的的是一些比较耗时的分段操作:如视频转换,网络下载等,这种方式下的取消机制如下:
建立一个标记位,表示该操作是否已经取消
UI线程在获取到取消事件后,置标记位为true
耗时的操作线程里,没进行一小段操作之后查询该标记位,如果为true则主动退出。
本文共计940个文字,预计阅读时间需要4分钟。
在 .NET 4.0 中,引入了一个新的取消令牌类。这个类在基本层面上集成了我们常用的取消操作方式,在并发任务中非常有用。同步模式下的取消操作:一种常见的需要支持取消功能的场景。
在.net 4.0中,引入了一个新的类CancellationToken,这个类基本上集成了我们各种常用的取消方式,在并发任务中非常有用。
同步模式下的取消:
一种比较常见的需要支持取消功能的的是一些比较耗时的分段操作:如视频转换,网络下载等,这种方式下的取消机制如下:
建立一个标记位,表示该操作是否已经取消
UI线程在获取到取消事件后,置标记位为true
耗时的操作线程里,没进行一小段操作之后查询该标记位,如果为true则主动退出。

