asp.net vb.net可以解释一下有什么问题吗?

时间:2016-10-03 18:00:52

标签: asp.net vb.net

此代码有什么问题?

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    Dim i As Integer = 0
    Do
        Response.Write("hello")
    Loop While i < 5
End Sub

我有错误

System.OutOfMemoryException was unhandled
Insufficient memory to continue the execution of the program.

有谁可以解释为什么我有这个错误?

2 个答案:

答案 0 :(得分:2)

这是您的代码的固定版本:

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    Dim i As Integer = 0
    Do
        Response.Write("hello")
        i = i + 1
    Loop While i < 5
End Sub

答案 1 :(得分:1)

所以你的问题是&#34;为什么内存不足&#34;。因为.NET Framework只能访问这么多内存。基本上你的循环说&#34;继续燃烧记忆,直到计算机崩溃或耶稣回来&#34;。由于没有发生Armageddon并且框架具有防止计算机崩溃的保护,因此当您使用没有终止子句或增量的循环来烧毁内存以避免永远循环时,您的预期结果会失败并且它会引发内存不足错误(或直到框架阻止您崩溃计算机)。 ; - )