मैं अवधारणा को सरल तरीके से समझाने की कोशिश कर रहा हूं, उम्मीद है कि यह कार्यकर्ता थ्रेड अवधारणा को बेहतर ढंग से समझने में मदद करेगा।
जनरल परिभाषा: -
ए 'कार्यकर्ता सूत्र "सिर्फ एक धागा जो मालिक के लिए और अद्यतन काम परिणाम (हम" ग्राहक "यह कॉल कर सकते हैं) अपने बॉस के आदेश पर कुछ पृष्ठभूमि काम को करने के चलाता है।
तकनीकी परिभाषा: -
एक कार्यकर्ता धागा आमतौर पर एक धागा है कि ग्राहकों के अनुरोध पर सक्रिय हो जाता है के रूप में परिभाषित किया गया है।
उदाहरण 1:
1- हम पिज्जा की दुकान है, जहां 10 लोग हैं, जो एक स्वादिष्ट पिज्जा तैयार करने में विशेषज्ञ हैं देखते हैं। इन्हें "कार्यकर्ता धागे" कहा जाता है।
2- हमारे पास एक ऐसा व्यक्ति है जो ग्राहकों से ऑर्डर प्राप्त करता है। उस आदमी को "ग्राहक" कहा जाता है। जब भी कोई नया ऑर्डर आता है, तो "वर्कर थ्रेड" में से एक पिज्जा तैयार करने और पिज्जा तैयार होने के बाद ग्राहक को अपडेट करना शुरू कर देता है।
3- जब 10 से कम आदेश होते हैं, तो कुछ कर्मचारी बस आदर्श बैठते हैं।
4- जब 10 से अधिक ऑर्डर होते हैं, तो आदेश केवल प्रतीक्षा कतार में डाल दिए जाते हैं।
उदाहरण 2:
1- एक अनुप्रयोग सर्वर है कि बंदरगाह को सुनता है 8080.
2- एक अनुरोध 8080.
3- एक श्रोता धागा (यह कहा जाता है बंदरगाह पर में आता है "क्लाइंट" के रूप में) उस अनुरोध को लेता है और इसे "कार्यकर्ता थ्रेड" पर भेजता है जो अनुरोध को पूरा करता है। वास्तव में ऐप सर्वर पर "वर्कर थ्रेड" का एक पूल बनाए रखा गया है ("वर्कर थ्रेड" प्रोग्राम की कई वस्तुएं)।
4- यदि दो अनुरोध एक ही समय में आते हैं, तो दो कार्यकर्ता धागे आवंटित किए जाते हैं और कार्य एक साथ निष्पादित किया जाता है।
क्या आप सुनिश्चित हैं कि आपके एप्लिकेशन को बहुत सारे थ्रेड की आवश्यकता है? तथ्य यह है कि आप इस सवाल से पूछ रहे हैं, सुझाव देता है कि आपको थ्रेडिंग को कम करने की कोशिश करनी चाहिए ... –
मुझे क्या करना चाहिए: मेरी आवश्यकताएं 1) एक सॉकेट पढ़ें और फ़ाइल में लिखें और डीबी 2 में मान डालें 2) निगरानी रखें डीबी और यूआई स्क्रीन में लगातार रीफ्रेश किए गए मान (या नए डाले गए मान) प्रदर्शित करते हुए –
टीजे, यदि आप टैग में प्लेटफार्म (सी #, जावा) इंगित करते हैं तो यह मदद कर सकता है। –