मेरे पास यूआरएल की एक दी गई सूची है, और मैं एक HTTP वेब अनुरोध ऑब्जेक्ट करता हूं, और इसके साथ कनेक्ट करने का प्रयास करता हूं, मेरे पास यूआरएल का 'सरणी' है, और मैं प्रत्येक के साथ कनेक्ट करने का प्रयास करता हूं। उद्देश्य देख रहा है कि कौन से बाहर हैं।एक पंक्ति में कई वेब अनुरोध करने का सबसे आसान तरीका क्या है?
यह पहले से ही काम करता है, लेकिन एक अनुरोध केवल अंतिम समाप्त होने के साथ ही शुरू होता है, इसलिए यह काफी धीमा काम कर रहा है, प्रति सेकंड लगभग दो अनुरोध।
मैं सोच रहा था कि मुझे पृष्ठभूमि में काम करने वाले लगभग 5 धागे बनाना चाहिए, जो इसे 5 गुना तेज कर देगा, जो वांछित गति (साझा इंटरनेट बैंड को अधिभारित करने के दौरान) होगा। लेकिन मुझे दो समस्याएं हैं:
1 - मुझे यह भी नहीं पता कि यह मेरी समस्या का सबसे अच्छा समाधान है। 2 - मैंने कुछ बार कोशिश की है, लेकिन मैं .NET ढांचे के लिए नया हूं, और कभी भी बहु-थ्रेड का उपयोग नहीं किया है। इसलिए मुझे नहीं पता कि मैं इसे आसानी से कैसे करूं।
मेरे पास एक फ़ंक्शन प्रारंभ() है, और इसके लिए यह है कि सभी यूआरएल के जांच अस्तित्व के माध्यम से जाता है।
डेटा: वीएस 08, .NET 3.5, सी #।
- [संपादित करें] -
किसी को भी मुझे बता सकते हैं कि कैसे BackgroundWorker में पांच (नहीं यथासंभव अधिक से अधिक) धागे का उपयोग करने के (कोड नमूना यदि संभव हो तो) के साथ? आखिरी प्रसंस्करण समाप्त होने के ठीक बाद शुरू करने के बारे में क्या?
मैं वर्तमान में कुछ पृष्ठभूमिकर्मी का उपयोग कर रहा हूं, और यह काम कर रहा है, लेकिन मुझे यकीन नहीं है कि यह वास्तव में कई बार तेज़ है क्योंकि मेरे पास पृष्ठभूमिकर्मी हैं। विंडोज़ के लिए यह "app.config" भी आवेदन करता है? – Marcelo
app.config Winforms के लिए काम करता है। डिफ़ॉल्ट अधिकतम कनेक्शन 2 प्रति आईपी है, जो अतिरिक्त पृष्ठभूमि कार्यकर्ताओं के प्रभाव को मास्क कर सकता है। –