簡體   English   中英

排隊任務。運行

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM