我有不同的任务要从不同的文件中读取并在其中找到一个单词。我已将它们放入一个任务数组中,我以 waitAny 方法开始,如下所示:
foreach (string file in filesList)
{
files[i] = Task.Factory.StartNew(() =>
{
mySearch.Invoke(file);
});
i++;
}
System.Threading.Tasks.Task.WaitAny(files);
我想在其中一项任务完成后立即停止所有其他任务(它在找到单词时完成)。目前,使用waitany,我可以知道一项任务何时完成,但我不知道如何知道哪一项已完成以及如何停止其他任务。实现这一目标的最佳方法是什么?