वेब कार्यकर्ता

विश्वव्यापी वेब संकाय (W3C) और वेब हाइपरटेक्स्ट एप्लिकेशन टेक्नोलॉजी वर्किंग ग्रुप (WHATWG) द्वारा परिभाषित एक वेब कार्यकर्ता, एक HTML पृष्ठ से निष्पादित एक जावास्क्रिप्ट स्क्रिप्टिंग भाषा है जो पृष्ठभूमि प्रक्रिया में चलती है, स्क्रिप्ट से स्वतंत्र रूप से एक ही HTML पेज से निष्पादित किया गया है। वेब कर्मचारी अक्सर बहु-कोर CPU का अधिक प्रभावी ढंग से उपयोग करने में सक्षम होते हैं। W3C और WHATWG वेब कर्मचारियों को लंबे समय तक चलने वाली स्क्रिप्ट के रूप में देखते हैं जो क्लिक या अन्य उपयोगकर्ता इंटरैक्शन का जवाब देने वाली स्क्रिप्ट से बाधित नहीं होती हैं। ऐसे कर्मचारियों को उपयोगकर्ता की गतिविधियों से बाधित होने से बचाने के लिए वेब पेजों को उसी समय उत्तरदायी रहने देना चाहिए जब वे पृष्ठभूमि में लंबे समय तक कार्य कर रहे हों।

वेब वर्कर विनिर्देश HTML लिविंग स्टैंडर्ड का हिस्सा है।

सिंहावलोकन
जैसा कि WHATWG द्वारा कल्पना की गई है, वेब कर्मचारी अपेक्षाकृत भारी वजन वाले हैं और बड़ी संख्या में उपयोग करने का इरादा नहीं रखते हैं। उच्च स्टार्ट-अप प्रदर्शन लागत और उच्च प्रति-इंस्टेंस मेमोरी लागत के साथ उनके लंबे समय तक जीवित रहने की उम्मीद है।

वेब कर्मचारी HTML दस्तावेज़ की स्क्रिप्ट के संदर्भ से बाहर चलते हैं। नतीजतन, जबकि उनके पास दस्तावेज़ ऑब्जेक्ट मॉडल तक पहुंच नहीं है, वे जावास्क्रिप्ट प्रोग्रामों के निष्पादन (कंप्यूटर विज्ञान) की सुविधा प्रदान कर सकते हैं।

सुविधाएँ
संदेश देना के माध्यम से वेब कर्मचारी मुख्य दस्तावेज़ के साथ इंटरैक्ट करते हैं। निम्न कोड एक कार्यकर्ता बनाता है जो दी गई फ़ाइल में जावास्क्रिप्ट को निष्पादित करेगा।

कार्यकर्ता को एक संदेश भेजने के लिए,  नीचे दिखाए गए अनुसार कार्यकर्ता वस्तु की विधि का उपयोग किया जाता है।

ई> संपत्ति एक कार्यकर्ता से जानकारी प्राप्त करने के लिए एक इवेंट हैंडलर का उपयोग करती है।

एक बार एक कार्यकर्ता को समाप्त कर दिया जाता है, यह दायरे से बाहर हो जाता है और इसे संदर्भित करने वाला चर अपरिभाषित हो जाता है; इस बिंदु पर जरूरत पड़ने पर एक नया कार्यकर्ता बनाया जाना है।

उदाहरण
वेब वर्कर्स का सबसे सरल उपयोग यूजर इंटरफेस को बाधित किए बिना कम्प्यूटेशनल रूप से महंगा कार्य करने के लिए है।

इस उदाहरण में, मुख्य दस्तावेज़ प्रमुख संख्याों की गणना करने के लिए एक वेब वर्कर को जन्म देता है, और उत्तरोत्तर सबसे हाल ही में पाए गए प्राइम नंबर को प्रदर्शित करता है।

मुख्य पृष्ठ इस प्रकार है: <वाक्यविन्यास लैंग = html4सख्त> <!DOCTYPE html> <एचटीएमएल> <सिर> कर्मी का उदाहरण: एक-कोर संगणना   अब तक खोजी गई उच्चतम अभाज्य संख्या है:  var कार्यकर्ता = नया कार्यकर्ता ('कार्यकर्ता.जेएस'); कार्यकर्ता.ऑनमेसेज = फ़ंक्शन (ईवेंट) { document.getElementById ('परिणाम')। textContent = event.data; };     ई> कंस्ट्रक्टर कॉल एक वेब वर्कर बनाता है और रिटर्न करता है   ऑब्जेक्ट उस वेब वर्कर का प्रतिनिधित्व करता है, जिसका उपयोग वेब वर्कर के साथ संवाद करने के लिए किया जाता है। वह वस्तु है   इवेंट हैंडलर कोड को वेब वर्कर से संदेश प्राप्त करने की अनुमति देता है।

वेब वर्कर स्वयं इस प्रकार है:

पृष्ठ पर वापस संदेश भेजने के लिए,  प्राइम मिलने पर संदेश पोस्ट करने के लिए विधि का उपयोग किया जाता है।

समर्थन
यदि ब्राउज़र वेब वर्कर्स का समर्थन करता है, तो वर्कर प्रॉपर्टी ग्लोबल विंडो ऑब्जेक्ट पर उपलब्ध होगी। यदि वेब ब्राउज़र इसका समर्थन नहीं करता है तो वर्कर संपत्ति अपरिभाषित होगी।

निम्न उदाहरण कोड एक ब्राउज़र पर वेब वर्कर समर्थन के लिए जाँच करता है

वेब कर्मचारी वर्तमान में Google क्रोम, ओपेरा (वेब ​​ब्राउज़र), माइक्रोसॉफ्ट बढ़त, इंटरनेट एक्सप्लोरर (संस्करण 10), mozilla फ़ायरफ़ॉक्स और सफारी (वेब ​​ब्राउज़र) द्वारा समर्थित हैं।  आईओएस (एप्पल)ऐप्पल) के लिए मोबाइल सफारी ने आईओएस 5 के बाद से वेब श्रमिकों का समर्थन किया है। एंड्रॉइड (ऑपरेटिंग सिस्टम) ब्राउज़र ने पहले एंड्रॉइड 2.1 में वेब कर्मचारियों का समर्थन किया था, लेकिन एंड्रॉइड 4.4 में बहाल होने से पहले एंड्रॉइड संस्करण 2.2-4.3 में समर्थन हटा दिया गया था।

बाहरी संबंध

 * Web Workers – W3C
 * Web Workers – WHATWG
 * Using Web Workers – Mozilla Developer Network