MBW Blog

醉后不知天在水, 满船清梦压星河

Lambda表达式-避免GC的产生

问题背景

在c#中使用Lambda表达式是很常见的,但是某些情形下Lambda表达可能导致大量的GC产生, 怎么在c#正确的使用Lambda表达式以避免产生过多的GC呢?

案例1

没有捕获任何外部变量

1
2
3
4
5
6
7
public class LambdaTest
{
    public void Foo()
    {
        Func<int, int> func = (x) => x + 1;
    }
}

编译生成的IL等效c#代码

0%