[英]Queuing the task.Run
我有此代碼用於排隊任務以將文件讀入結果變量。 但有時,一些文件被調用在一起,因此,文本存儲不正確。 如何讓我的程序在運行下一個 foreach 之前等待任務完成?
foreach (string path in paths)
{
result = "";
Task.Run(() =>
{
result = File.ReadAllBytes(path);
}.ContinueWith(x =>
{
result = result.remove(25);
}, TaskScheduler.FromCurrentSynchronizationContext());
}
看來你應該扭轉局面:
result = "";
Task.Run(() =>
{
foreach (string path in paths)
{
result = File.ReadAllBytes(path);
}
}.ContinueWith(x =>
{
result = result.remove(25);
}, TaskScheduler.FromCurrentSynchronizationContext());
不確定“remove(25)”在做什么,所以把它放在最后,但也許它也應該在 foreach 循環中移動。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.