在做自动更新程序时想省点事,直接使用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的限制。