Asp.net 正在asp中中止获取线程

Asp.net 正在asp中中止获取线程,asp.net,Asp.net,我正在尝试在ASP页面中创建一个非常大的文本文件,但我发现线程被异常中止,我没有使用Response.Redirect/Server。 你知道我为什么会得到这个吗?或者你能告诉我另一种在ASP中创建大文本文件的方法吗 引起我注意的是,这个异常并不总是发生,我第一次运行它时,它工作了,但下一次运行3到4次时,异常发生了,然后它又工作了 GetTextFileName(Byval filename as String) as Boolean If Directory.Exists(Serve

我正在尝试在ASP页面中创建一个非常大的文本文件,但我发现线程被异常中止,我没有使用Response.Redirect/Server。 你知道我为什么会得到这个吗?或者你能告诉我另一种在ASP中创建大文本文件的方法吗

引起我注意的是,这个异常并不总是发生,我第一次运行它时,它工作了,但下一次运行3到4次时,异常发生了,然后它又工作了

GetTextFileName(Byval filename as String) as Boolean
    If Directory.Exists(Server.MapPath("./Report/E005/Texts")) Then
        Directory.Delete(Server.MapPath("./Report/E005/Texts"), True)
        Directory.CreateDirectory(Server.MapPath("./Report/E005/Texts"))
    Else
        Directory.CreateDirectory(Server.MapPath("./Report/E005/Texts"))
    End If
    While continue
        cmd.Parameters.Clear()
        cmd.Parameters.Add(New OracleParameter("p_minus", minus))
        cmd.Parameters.Add(New OracleParameter("p_max", max))
        p = New OracleParameter("p_report", OracleType.Cursor)
        p.Direction = ParameterDirection.Output
        cmd.Parameters.Add(p)
        dt = ejecutar.consulta(cmd, "Report").Tables(0)

        If dt.Rows.Count > 0 Then
            'Writes File
            Dim x As String = Me.GenerateTXT(dt, FolderRoute, fileName & fileCounter.ToString & ".txt", minus)
            dt = Nothing
        ElseIf minus <= 1 Then
            'There was not data
            MsgBox1.ShowMessage("There was not data")
            continue = False
        Else
            'There was not data but I'm not in first page, so I finished data
            continue = False
        End If
        minus += 100000
        max += 100000
        FileCounter += 1
    End While
    'Generate ZIP
    If File.Exists(Server.MapPath(ZipFolder) & ZipName & ".zip") Then
        File.Delete(Server.MapPath(ZipFolder) & ZipName & ".zip")
    End If
    zip.AddDirectory(Server.MapPath(RouteFolder))
    zip.Save(Server.MapPath(ZipFolder) & ZipName & ".zip")
    filename = Server.MapPath(ZipFolder) & ZipName & ".zip"
    Return True
 End Function
GetTextFileName(Byval文件名为字符串)为布尔值
如果目录.Exists(Server.MapPath(“./Report/E005/Texts”)),则
Directory.Delete(Server.MapPath(“./Report/E005/text”),True)
Directory.CreateDirectory(Server.MapPath(“./Report/E005/text”))
其他的
Directory.CreateDirectory(Server.MapPath(“./Report/E005/text”))
如果结束
继续
cmd.Parameters.Clear()
添加(新的OracleParameter(“p_减号”,减号))
cmd.Parameters.Add(新的OracleParameter(“p_max”,max))
p=新的OracleParameter(“p_报告”,OracleType.Cursor)
p、 方向=参数方向。输出
cmd.Parameters.Add(p)
dt=ejecutar.consulta(cmd,“报告”)。表(0)
如果dt.Rows.Count>0,则
'写入文件
Dim x As String=Me.GenerateTXT(dt,FolderRoute,fileName&fileCounter.ToString&“.txt”,减号)
dt=无

ElseIf减我继续调试,发现我删除并创建文件夹的部分就是引发异常的部分。我想是的,因为我演了那个角色,例外没有再次开火。
但我不知道为什么会出现这样的问题……

也许有人能提供帮助,但我们需要更多的细节/代码来了解发生了什么。还有,什么是“大”文本文件?试试这个,我正在尝试在文本文件中写入一个查询的结果,该查询会产生600000行。我添加一些我使用的代码。多长时间后,你会得到线程中止异常?通常在IIS中,在IIS终止请求并重新启动进程之前,允许处理请求的时间是有限制的(您会得到一个线程中止的异常)。还要确保您没有耗尽内存,IIS还监视内存利用率,并在进程消耗过多时终止进程。一般来说,web请求可能不是这样批处理的最佳场所。