相关疑难解决方法(0)

Response.IsClientConnected什么时候变慢?

我有一个长期运行的ASP响应(实际上是一个MVC动作),如果用户已经导航,我想取消它.我认为这应该很简单:

if(!this.Response.IsClientConnected)
{
    Response.End();
}
Run Code Online (Sandbox Code Playgroud)

不过,我已经遇到各种渠道开始,这种方法是缓慢的.

所以我运行自己的测试(使用MVC迷你探查器,虽然你可以使用自己的):

using (var step = MiniProfiler.Current.Step("Response_IsClientConnected"))
if(!this.Response.IsClientConnected)
{
    Response.End();
}
Run Code Online (Sandbox Code Playgroud)

结果发现每次我调用它都会非常快:我的开发人员设置不到1毫秒.这是真是假.

在什么情况下Response.IsClientConnected预计会很慢?

我必须支持IIS6 - 会Response.IsClientConnected更慢吗?

有谁知道它在幕后做了什么?在低级别,我希望TCP/IP堆栈知道连接是否仍然存在,所以我希望这个检查是即时的,但IIS是否还需要做一些额外的工作来检查?

asp.net iis performance

10
推荐指数
1
解决办法
1816
查看次数

标签 统计

asp.net ×1

iis ×1

performance ×1