BufferOutput、Flush()、Clear()

作者:vkvi 来源:千一网络(原创) 日期:2009-10-1

Response.BufferOutput

布尔类型,默认值为 true,表示是否将网页内容放在服务器缓冲区(有些文章这里译为“缓存”,不准确,应该用“缓冲”),然后整页发送它。

Response.Flush()

将服务器中缓冲区的内容立即发送到客户端。如果在每一句 Response.Write 后面跟上 Response.Flush(),那么就基本上相当于将 Response.BufferOutput 设置于 false:都是一有内容就向客户端发送,而不等所有 Write 语句完了再发送。

Response.Clear()

清除服务器缓冲区的内容,也就是说已经输出但还没有发送到客户端的内容都被清除。

示例

Response.BufferOutput = false;
 
for (int i = 0; i < 1000; i++)
{
    Response.Write(i.ToString());
    Response.Flush();
}
 
Response.Write("End");
Response.Clear();

由于 BufferOutput 为 false,所以每次 Write 后就立即输出到客户端,可以看到客户端的内容不是立即显示出来的,而是一点点的出来的。由于输出内容比较简短,所以效果可能不是特别明显,请观察滚动条可以看出来。

由于 BufferOutput 为 false,也就是没有使用缓冲区,所以 Flush() 和 Clear() 方法要不要都是一样的,因为这两个都是操作缓冲区的。

一般情况下,我们应该使用 BufferOutput 的默认值 true,除非输出内容特别多,为了让客户端能够尽快看到点内容,可以改变 BufferOutput 值或使用 Flush() 方法。

你前面那位网友看了:如何设置通过与不通过

▲▲▲嘿,欢迎转载传播本站原创文章,尽量保留来源噢。▲▲▲

文章评论
标题:必填
内容:
本站永远终止与捏造“罪名”不支付广告费的某度联盟合作。
vkvi
vkvi

作者简介: vkvi,致力于 .NET Web 开发、移动开发的技术推广,在 .NET、SQL Server、Windows Server 等方面有深入研究和丰富经验,10 年间共计撰写文章 4000 余篇。 主持金融、国土、农业、电商等多个行业项目执行, 推行“技术提升生产力、人心决定成功率”的管理理论。 联系他