मैं थ्रेडिंग के बारे में अधिक जानने के लिए देख रहा हूं और मैं जानना चाहता था: एक बहुप्रचारित आवेदन क्या है?एक बहुप्रचारित आवेदन क्या है?
उत्तर
Multithreading एक व्यापक प्रोग्रामिंग और निष्पादन मॉडल के रूप में एक ही प्रक्रिया के संदर्भ में एकाधिक धागे मौजूद होने की अनुमति देता है। ये थ्रेड प्रक्रिया संसाधनों को साझा करते हैं लेकिन स्वतंत्र रूप से निष्पादित करने में सक्षम हैं। थ्रेडेड प्रोग्रामिंग मॉडल समवर्ती निष्पादन के उपयोगी अमूर्तता के साथ डेवलपर्स प्रदान करता है। हालांकि, शायद प्रौद्योगिकी का सबसे दिलचस्प अनुप्रयोग तब होता है जब इसे एक एकल प्रक्रिया पर लागू किया जाता है ताकि मल्टीप्रोसेसर सिस्टम पर समानांतर निष्पादन को सक्षम किया जा सके।
इसका मतलब है कि एक भी process कई अलग अलग "कार्यों" हो सकता है executingconcurrently, आवेदन बेहतर उपलब्ध हार्डवेयर (कई कोर/प्रोसेसर) का उपयोग करने की इजाजत दी। थ्रेड उनके बीच संवाद कर सकते हैं (उनके पास shared memory है), लेकिन hard problem में others के साथ साझा ऑब्जेक्ट/मेमोरी को accesing करते समय है।
थ्रेडिंग लंबे समय तक संचालन करते समय, सभी एप्लिकेशन लूप को पकड़ने के उपयोग के बिना किसी एप्लिकेशन को उत्तरदायी रहने की अनुमति देता है।
उदाहरण के लिए, एक गैर थ्रेडेड copy
प्रोग्राम आपको कॉपी पूरा होने तक कुछ भी करने की अनुमति नहीं देगा।
थ्रेडिंग जटिल, लांघी, स्वतंत्र समस्याओं के साथ मदद करता है, लेकिन a lot more complexity के साथ लाता है, जो इसे अनुभवी डेवलपर्स के लिए भी कठिन बनाता है।
यह एक ऐसा एप्लिकेशन है जो अपने लक्ष्य को पूरा करने के लिए आंतरिक रूप से एक से अधिक thread का उपयोग करता है।
बहुत सारे उदाहरण हैं, क्योंकि उपयोगकर्ता के साथ बातचीत करने की आवश्यकता वाले अधिकांश एप्लिकेशन में यूआई थ्रेड और काम करने वाले थ्रेड का एक सेट होता है। यह UI को उत्तरदायी रहने की अनुमति देने के लिए किया जाता है जबकि एप्लिकेशन कुछ कार्य करने में व्यस्त रहता है।
एक बहु थ्रेडेड एप्लिकेशन चीजों को गति देने के लिए एक साथ कई कार्यों को चलाने का लाभ उठाता है। मल्टीथ्रेडिंग कई सीपीयू मशीनों का लाभ भी ले सकती है।
यह एक ऐसा एप्लिकेशन है जो एक साथ कई चीजें कर सकता है। उदाहरण के लिए, यदि आप वर्ड में एक दस्तावेज़ लिख रहे हैं, तो आपके कीबोर्ड पर प्रतिक्रिया देने वाला धागा है, वहां एक थ्रेड है जो आपकी वर्तनी की जांच कर रहा है, वहां कोई भी है जो आपके व्याकरण की जांच कर रहा है, एक और थ्रेड आपके दस्तावेज़ का बैकअप सहेजने के मामले में हो सकता है कार्यक्रम दुर्घटनाग्रस्त
यह एक ऐसा प्रोग्राम है जो एक से अधिक thread का उपयोग करता है। विभिन्न धागे साझा स्मृति संरचनाओं तक पहुंच सकते हैं (आमतौर पर उचित synchronization mechanisms का उपयोग करके, उदाहरण के लिए locks)। एक उदाहरण एक प्रोग्राम होगा जो एक साथ कुछ फ़ाइलों को डाउनलोड करता है, डाउनलोड प्रक्रिया को तेज़ करने के लिए प्रत्येक थ्रेड का उपयोग करके प्रत्येक डाउनलोड (इसे प्राप्त करने के लिए और अधिक परिष्कृत तरीके हैं, यह केवल एक उदाहरण है)।
बहु-थ्रेडिंग अक्सर सीपीयू-बाध्य कार्यों पर उपयोग की जाती है, जो आधुनिक कंप्यूटर में सभी कोरों का उपयोग करने से लाभान्वित होती है (उदाहरण के लिए एकाधिक प्रोसेसर का उपयोग करके साइफर को तोड़ने का प्रयास करना)।
धागे और प्रक्रिया के बीच का अंतर यह है कि विभिन्न प्रक्रियाएं आमतौर पर स्मृति और डेटा संरचनाओं को सीधे साझा नहीं कर सकती हैं, हालांकि प्रक्रियाओं के बीच जानकारी साझा करने के लिए विभिन्न तंत्र मौजूद हैं (वे आमतौर पर धागे के बीच जानकारी साझा करने से अधिक महंगा होते हैं)।
क्या वह
थ्रेड्स और प्रक्रियाओं के कार्यान्वयन एक से दूसरे ऑपरेटिंग सिस्टम से अलग है ने कहा, लेकिन ज्यादातर मामलों में, एक धागा एक प्रक्रिया के अंदर निहित है। एकाधिक थ्रेड एक ही प्रक्रिया में मौजूद हो सकते हैं और मेमोरी जैसे संसाधन साझा कर सकते हैं, जबकि विभिन्न प्रक्रियाएं इन संसाधनों को साझा नहीं करती हैं।
धागे के लिए आपको प्रक्रिया को जानना है जो प्रोग्राम के उदाहरण के अलावा कुछ भी नहीं है, जब आप इसे चलाने के दौरान विंडोज़ में पेंट का उदाहरण लेते हैं, तो यह एक उदाहरण या पेंट प्रोग्राम की प्रक्रिया बनाता है। जब आप अलग-अलग विंडो पर मल्टीप्लिप छवि खोलते हैं तो आप उस प्रोग्राम की एक से अधिक प्रक्रिया बनाते हैं। इसी प्रकार थ्रेड प्रक्रिया की एक इकाई है जिसका मतलब है कि आप एक पेंट विंडो देखते हैं लेकिन पृष्ठभूमि में कई धागे उदा।, ब्रश, पेंसिल इत्यादि हैं। प्रोसेसर
- 1. जावास्क्रिप्ट बहुप्रचारित है?
- 2. क्या यह कोड वास्तव में बहुप्रचारित है?
- 3. एक बहुप्रचारित अनुप्रयोग का अंतिम धागा
- 4. एक बहुप्रचारित प्रोग्राम में SIGINT को पकड़ना
- 5. बहुप्रचारित अनुप्रयोग में अपवाद।
- 6. एक बहुप्रचारित जावा एप्लिकेशन में SQLite
- 7. बहुप्रचारित अनुप्रयोगों में लॉगिंग गतिविधियां
- 8. स्वतंत्र बहुप्रचारित प्रक्रियाएं एक साथ ब्लॉक करती हैं
- 9. डेल्फी: आवेदन क्या है। हैंडल?
- 10. क्या "मानक" आवेदन वापसी/निकास कोड एक आवेदन समर्थन चाहिए?
- 11. क्या पाइथन में एक बहुप्रचारित क्रॉलर वास्तव में चीजों को गति देता है?
- 12. एक बहुप्रचारित जावा प्रोग्राम में, क्या प्रत्येक थ्रेड में System.out की अपनी प्रति होती है?
- 13. एक आवेदन
- 14. एक आवेदन है कि एक परीक्षण अवधि
- 15. एक आवेदन ढांचा एक विरोधी पैटर्न है?
- 16. बहुप्रचारित पढ़ने में दौड़ की स्थिति के बारे में क्या?
- 17. एक बहुप्रचारित संदर्भ में GetLastError (और अन्य) की उचित हैंडलिंग
- 18. एक सी ++ एसओएपी (बहुप्रचारित) क्लाइंट एप्लिकेशन लिखना - जीएसओएपी
- 19. लिनक्स में एक बहुप्रचारित लटका प्रक्रिया को कैसे डिबग करें?
- 20. क्या छोटी चीज़ें मैं एक रेल आवेदन
- 21. मैं एक बहुप्रचारित एप्लिकेशन को कैसे चला सकता हूं?
- 22. एक उल्का आवेदन के साथ एसईओ पर प्रभाव क्या है?
- 23. क्यूटी आवेदन के लिए एक अच्छा एमवी * पैटर्न क्या है?
- 24. क्या एक न्यूनतम आवेदन स्क्रीनशॉट करना संभव है
- 25. nginx: इसका बहुप्रचारित लेकिन एकाधिक प्रक्रियाओं का उपयोग करता है?
- 26. क्या एएसपी.नेट सत्र आवेदन
- 27. एक नेट 3.5 आवेदन
- 28. कैसे एक सांत्वना आवेदन
- 29. एक जीयूआई सी ++ आवेदन
- 30. एक गैर मेट्रो आवेदन
प्रक्रिया के वर्कलोड को कम करने के लिए थ्रेड है! = थ्रेड – ripper234