根据MSDN,我可以按如下方式取消任务:
cancellation_token_source cts;
auto token = cts.get_token();
auto t = create_task([]
{
bool moreToDo = true;
while (moreToDo)
{
if (is_task_cancellation_requested())
{
cancel_current_task();
}
else
{
moreToDo = do_work();
}
}
}, token);
cts.cancel();
但是如何取消工厂方法返回的任务:
service->get_me_results().then([]()
{
// ...
});