在c#中定義了這種行爲嗎?在lambdas中使用循環變量
static void Main(string[] args)
{
for (int i = 0; i < 10; i++)
{
Task.Run(() => Console.WriteLine("This is task " + i));
}
Console.ReadLine();
}
輸出
This is task 10
This is task 10
This is task 10
This is task 10
This is task 10
This is task 10
This is task 10
This is task 10
This is task 10
This is task 10
我知道如何解決它,我知道爲什麼會發生,但它是一個定義的行爲?
@TimSchmelter _I知道如何解決它,我知道它爲什麼發生。 – Gusdor
你是什麼意思的「定義的行爲?」 –
@gusdor:所以你有沒有看過這個答案和它提供的eric lippert博客的鏈接?如果是這樣,你不明白哪一部分? –