做Anonymous Methods,Delegates,Action, Func和类似的,分配/消耗/吃你的计算机上的内存?匿名方法是否消耗内存?
如果是这样,他们上捕获码块上的每个变量分配相同的存储器?
做Anonymous Methods,Delegates,Action, Func和类似的,分配/消耗/吃你的计算机上的内存?匿名方法是否消耗内存?
如果是这样,他们上捕获码块上的每个变量分配相同的存储器?
当然他们这样做,就像任何其他的正常功能。如果它们不会被“存储”在内存中某处,它们在运行时如何被执行?
但如果你问他们消耗在每次调用更多的内存(如动态分配的内存),则没有,他们不这样做自己。
每一件事情都需要在内存中某种后备存储的,是的。
定义委托定义了一个新的类。所以这需要存储器来存储关于类的信息(也在运行时)。
定义Func
或Action
与特定的泛型类型定义(您隐藏)在运行一个新的类。所以这也需要记忆。
匿名方法是由编译器制作成一个正常的方法有胡言乱语的名字,并放入专用类。然后,就像任何其他方法一样,它需要运行时的内存来存储必须执行的代码。和其他类一样,这个类将需要一些内存。