我一直在研究 .net 4.0 中的任务及其取消。我喜欢 TPL 尝试以合作方式正确处理取消的事实。
但是,在任务内部的调用被阻塞并且需要很长时间的情况下应该怎么做?例如 IO/网络。
显然取消写入将是危险的。但这些都是例子。
示例:我将如何取消这个?DownloadFile
可能需要很长时间。
Task.Factory.StartNew(() =>
WebClient client = new WebClient();
client.DownloadFile(url, localPath);
);