多线程编程:任务取消

处理取消和中断机制,

如何编写任务和服务的代码,使它们响应取消请求。

任务取消:

可取消的任务:

取消的原因大概有:

  • 用户请求的取消;
  • 限时活动;
  • 应用程序事件;
  • 错误;
  • 关闭;


可取消的任务必须拥有取消策略:

  • 如何请求取消该任务;
  • 什么时机检查取消的请求到达;
  • 响应取消请求应该执行的行为。

取消任务的方式:

设置取消请求标示,任务定期查看,如果发现取消标志被设置过,提前结束任务。



如果任务代码响应中断,那么可以使用中断作为取消机制,并利用很多库类对中断的支持。中断通常是实现取消最明智的选择。



你可能感兴趣的:(多线程编程:任务取消)