簡體   English   中英

多任務控制台應用程序上的stackoverflow異常

[英]stackoverflow exception on multitasking console app

我有一個程序運行了很長的算法,所以我在許多任務中都使用它。 當Job方法在任務中工作時,我還有另一種方法來檢查所有任務是否已完成或某些任務是否仍在工作。 但是JobChecker方法給了我stackoverflow異常。 為什么會給出錯誤,我該如何解決?

public void Main()
{
    while ((line = sr.ReadLine()) != null)
    {
         string lineTemp = line;
         taskList.Add(Task.Run(() => Job(lineTemp, last)));
    }

    JobChecker(taskList);
}

public void JobChecker(List<Task> taskList)
{
    do
    {
        System.Threading.Thread.Sleep(1000);
    }
    while (taskList.Any(x => x.Status == TaskStatus.Running));
}

不必忙於等待,而使用諸如Task.WaitAllTask.WhenAll的內置函數

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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