c#中的无限循环内存异常

时间:2014-03-27 05:17:14

标签: c# .net out-of-memory

试图了解dot net中的内存不足异常。

如果我创建一个无限的while循环并在循环中创建一个新对象,该对象会将某些内容写入文件。

这个应用程序会耗尽内存吗?这会导致内存不足吗?

1 个答案:

答案 0 :(得分:1)

每当应用程序尝试并且无法分配内存以执行操作时,都会抛出OutOfMemoryException。根据{{​​3}},以下操作可能会抛出OutOfMemoryException:

  • 拳击(即在对象中包装值类型)
  • 创建数组
  • 创建对象

如果您尝试创建无限数量的对象,那么假设您迟早会耗尽内存是非常合理的。

注意:不要忘记Microsoft's documentation。根据正在创建的对象的生命周期,如果它们确定了它们,它将删除其中一些对象。不再使用了。)