gpt4 book ai didi

asp.net - 响应离开 IIS 后是否调用页面卸载?

转载 作者:行者123 更新时间:2023-12-05 01:37:45 24 4
gpt4 key购买 nike

我正在一个 asp.net 应用程序的 Page_Unload 事件中做一些诊断日志记录,这个日志记录可能需要相当长的时间(大约 100 毫秒)。页面卸载处理程序中的代码会阻止响应流吗?我可以通过使用 theadpool 异步完成我的工作,但如果它不会影响客户端的响应时间,我宁愿不这样做。

更多信息:

@thorkia 是正确的,因为文档说 Page_Unload 在响应发送到客户端后被调用,但在我的测试中(如@steve 所建议的)它 堵塞。我已经尝试过 Casini、IIS Express、Full IIS 7.5(在测试服务器上),包括发布和调试版本,有和没有连接调试器。而且,我捕获了稻草,尝试将 Async=true 放在页面指令中。我尝试使用 Fiddler(启用流媒体),而没有使用 Fiddler。我试过 IE9 和 Firefox。如果文档是“正确的”,那么我想知道它确实发送了响应,但可能不会“完成它”(这意味着我需要检查 HTTP 规范),因此页面不会呈现浏览器?但我的理解是,客户端浏览器在接收到字节时开始呈现页面,这对我来说也没有意义。我也试过查看 IL Spy 中的代码,但我认为这可能会花费我很多时间。

现在我很好奇;我做错了什么,还是文档有误导性?

最佳答案

为什么不试试呢?

protected void Page_UnLoad(object sender, EventArgs e)
{
System.Diagnostics.Debug.WriteLine("In Page_UnLoad");
System.Threading.Thread.Sleep(10000);
System.Diagnostics.Debug.WriteLine("Leaving Page_UnLoad");
}

关于asp.net - 响应离开 IIS 后是否调用页面卸载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7733452/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com