使用lambda表达式是否会为与正常foreach循环相对的GC生成垃圾?
// Lambda version
Foos.ForEach(f=>f.Update(gameTime));
// Normal approach:
foreach (Foo f in Foos)
{
f.Update(gameTime);
}
Run Code Online (Sandbox Code Playgroud)
CLR分析器显示我有69.9%system.Action <T>并且我怀疑是如上所述的foreach循环的lamba版本.真的吗?
编辑:我使用Microsoft CLR分析器:http://download.microsoft.com/download/4/4/2/442d67c7-a1c1-4884-9715-803a7b485b82/clr%20profiler.exe 或http://msdn.microsoft .COM/EN-US /库/ ff650691.aspx