using (WebResponse response = request.GetResponse())
{
    response.GetResponseStream().CopyTo(destination);
}

प्रत्येक जुन्या HttpWebRequest प्रतिसादाला असा व्यापात ठेवा जो त्याचा वापर पूर्ण करून त्याला मुक्त करतो. येथे destination हा अनुप्रयोगाचा लिहिण्यायोग्य आउटपुट प्रवाह आहे; कॉपी अयशस्वी झाली तरी using ब्लॉक WebResponse मुक्त करतो, त्या आउटपुटची मालकी न घेता.

एक प्रॉक्सी विनंती यशस्वी होणे आणि पुढील विनंत्या प्रतीक्षा करणे हे अपूर्ण प्रतिसाद कनेक्शन संसाधने व्यापत असल्याचे सूचित करू शकते. केवळ WebResponse मिळवणे त्याचा बॉडी पूर्ण करत नाही. विनंतीची वेळमर्यादा प्रतीक्षा मर्यादित करते, आधीच मिळालेल्या प्रत्येक प्रतिसादाचे आयुष्य नाही.

त्रुटींवरही तीच मालकी लागू करा. WebException अशी प्रतिसाद घेऊन येऊ शकते जी तुमचा कोड तपासतो; तपासणीनंतर ती बंद करा. वाहतूक अयशस्वीतेत प्रतिसादच नसू शकतो.

विल्हेवाट प्रतिसादाची संसाधने परत देते पण प्रत्येक बाबतीत पुनर्वापरयोग्य कनेक्शनची हमी देत नाही. प्रोटोकॉल, सर्व्हर आणि बॉडीचा वापर अजूनही महत्त्वाचा आहे.

हे जुन्या WebRequest स्टॅकच्या देखभालीशी संबंधित आहे. नवीन कोडमध्ये प्रत्यक्ष क्लायंटची प्रतिसाद/प्रवाह मालकी अनुसरा; HttpClient साठी, प्रतिसाद त्यांच्या विल्हेवाट व्यापात ठेवा, आणि ही स्वच्छता-अयशस्वीता प्रॉक्सी प्रमाणीकरण किंवा मार्ग निवडीपासून वेगळी ओळखा.

संबंधित लेख