| 導購 | 订阅 | 在线投稿
分享
 
 
 

用完HttpWebResponse时别忘了调用Close方法

2008-05-30 23:01:05  編輯來源:互聯網  简体版  手機版  評論  字體: ||
 
  在做自动更新程序时想省点事,直接使用HttpWebRequest和HttpWebResponse从服务器上下载更新的文件。 使用时注意Close响应流:

  使用HttpWebRequest.GetResponse()取得HttpWebResponse接口后,必须要记得调用HttpWebResponse.close关闭流。

  如果使用HttpWebResponse.GetResponseStream()取得响应流的话,那么使用此Stream的Close方法来关闭也是一样。

  如果是使用StreamReader.ReadToEnd()从响应流中读取文本,则在读取完内容后会自动关闭流。

  MSDN中这样描述HttpWebResponse.close方法:

  Close 方法关闭响应流并释放到资源的连接以供其他请求重用。

  您必须调用 Stream.Close 或 HttpWebResponse.Close 方法来关闭流并释放连接以供重用。不必同时调用 Stream.Close 和 HttpWebResponse.Close,但这样做不会导致错误。关闭该流失败会导致应用程序用尽连接。

  连接限制好像是最大2个,不知是IIS的限制还是本地HttpWebRequest的限制。
 
 
 
在做自动更新程序时想省点事,直接使用HttpWebRequest和HttpWebResponse从服务器上下载更新的文件。 使用时注意Close响应流: 使用HttpWebRequest.GetResponse()取得HttpWebResponse接口后,必须要记得调用HttpWebResponse.close关闭流。 如果使用HttpWebResponse.GetResponseStream()取得响应流的话,那么使用此Stream的Close方法来关闭也是一样。 如果是使用StreamReader.ReadToEnd()从响应流中读取文本,则在读取完内容后会自动关闭流。 MSDN中这样描述HttpWebResponse.close方法: Close 方法关闭响应流并释放到资源的连接以供其他请求重用。 您必须调用 Stream.Close 或 HttpWebResponse.Close 方法来关闭流并释放连接以供重用。不必同时调用 Stream.Close 和 HttpWebResponse.Close,但这样做不会导致错误。关闭该流失败会导致应用程序用尽连接。 连接限制好像是最大2个,不知是IIS的限制还是本地HttpWebRequest的限制。
󰈣󰈤
 
 
 
>>返回首頁<<
 
 
 
 
 
 熱帖排行
 
 
王朝网络微信公众号
微信扫码关注本站公众号 wangchaonetcn
 
  免责声明:本文仅代表作者个人观点,与王朝网络无关。王朝网络登载此文出于传递更多信息之目的,并不意味著赞同其观点或证实其描述,其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有