عند القيام ببرنامج التحديث التلقائي، فأنت تريد توفير بعض المتاعب واستخدام HttpWebRequest وHttpWebResponse مباشرة لتنزيل الملفات المحدثة من الخادم. انتبه إلى دفق الاستجابة Close عند استخدامه:
بعد استخدام HttpWebRequest.GetResponse() للحصول على واجهة HttpWebResponse، يجب أن تتذكر الاتصال بـ HttpWebResponse. Close لإغلاق الدفق.
إذا كنت تستخدم HttpWebResponse.GetResponseStream() للحصول على دفق الاستجابة، فاستخدم طريقة إغلاق هذا الدفق لإغلاقه.
إذا كنت تستخدم StreamReader.ReadToEnd() لقراءة النص من تدفق الاستجابة، فسيتم إغلاق الدفق تلقائيًا بعد قراءة المحتوى.
يصف MSDN الأسلوب HttpWebResponse. Close كما يلي:
يقوم الأسلوب Close بإغلاق دفق الاستجابة وتحرير الاتصال بالمورد لإعادة استخدامه بواسطة طلبات أخرى.
يجب عليك استدعاء الأسلوب Stream.Close أو HttpWebResponse.Close لإغلاق الدفق وتحرير الاتصال لإعادة استخدامه. ليس من الضروري استدعاء Stream.Close وHttpWebResponse.Close في نفس الوقت، ولكن القيام بذلك لن يتسبب في حدوث خطأ. يمكن أن يؤدي الفشل في إغلاق الدفق إلى نفاد اتصالات التطبيق.
يبدو أن حد الاتصال هو 2 كحد أقصى. لا أعرف ما إذا كان هذا هو حد IIS أو حد HttpWebRequest المحلي.