Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net C#如何管理循环中新操作符分配的内存?_.net_Memory Management_New Operator - Fatal编程技术网

.net C#如何管理循环中新操作符分配的内存?

.net C#如何管理循环中新操作符分配的内存?,.net,memory-management,new-operator,.net,Memory Management,New Operator,例如: for (i=0;i<10;i++) { myclass = new myclass(); // do stuff with myclass } for(i=0;i由于在下一次迭代*之后没有对每个新对象的引用,因此它们有资格被垃圾收集。但是,由于您不知道所述垃圾收集将在何时发生,因此对于最终的内存占用没有直接的答案 有关更多详细信息,请参阅 *除非构造函数将引用添加到对象的某个地方,否则它会粘在一起。FYI,这不是C问题,而是.NET问题。+1.旁注:如果myClas

例如:

for (i=0;i<10;i++)
{
   myclass = new myclass();
   // do stuff with myclass
}

for(i=0;i由于在下一次迭代*之后没有对每个新对象的引用,因此它们有资格被垃圾收集。但是,由于您不知道所述垃圾收集将在何时发生,因此对于最终的内存占用没有直接的答案

有关更多详细信息,请参阅


*除非构造函数将引用添加到对象的某个地方,否则它会粘在一起。

FYI,这不是C问题,而是.NET问题。+1.旁注:如果
myClass
实际上是
struct
的话,情况会有所不同,但希望不是这样。我想补充一点,使用托管语言的最大好处是你不必担心像这样的事情。@iamkrillin-正确,我实际上有嵌入式系统的C背景,所以我自然而然地想到了这些问题;)