मल्टीथ्रेडिंग दो या दो से अधिक थ्रेड्स का समवर्ती निष्पादन है, जो प्रोग्राम को एक साथ कई कार्य करने की अनुमति देता है। जावा में, प्रत्येक थ्रेड नियंत्रण के एक स्वतंत्र प्रवाह का प्रतिनिधित्व करता है। थ्रेड निष्पादन की एक हल्की, स्वतंत्र इकाई है, और मल्टीथ्रेडिंग सिस्टम संसाधनों के कुशल उपयोग को सक्षम बनाता है, जिससे अनुप्रयोगों में बेहतर प्रदर्शन और प्रतिक्रिया होती है।
जावा में मल्टीथ्रेडिंग का उपयोग करने के प्राथमिक कारण:
थ्रेड निर्माण: थ्रेड्स को 'थ्रेड' क्लास का विस्तार करके या 'रननेबल' इंटरफ़ेस को लागू करके बनाया जा सकता है। थ्रेड्स समान प्रक्रिया साझा करते हैं लेकिन उनका अपना स्टैक और प्रोग्राम काउंटर होता है।
जावा में थ्रेड बनाना:
जावा कोड:
class MyThread extends Thread { public void run() { } } // Creating and starting the thread MyThread myThread = new MyThread(); myThread.start();
जावा कोड:
class MyRunnable implements Runnable { public void run() { } } // Creating and starting the thread Thread myThread = new Thread(new MyRunnable()); myThread.start();
थ्रेड स्टेट्स और जीवनचक्र: जावा में एक थ्रेड अपने जीवनचक्र में विभिन्न राज्यों से गुजरता है।
नया: थ्रेड बनाया गया है लेकिन अभी तक शुरू नहीं हुआ है।
चलाने योग्य: थ्रेड चलने के लिए तैयार है और सीपीयू की प्रतीक्षा कर रहा है।
अवरुद्ध: थ्रेड एक सिंक्रनाइज़ ब्लॉक या विधि में प्रवेश करने के लिए मॉनिटर लॉक की प्रतीक्षा कर रहा है।
प्रतीक्षा कर रहा है: थ्रेड किसी विशिष्ट क्रिया को करने के लिए किसी अन्य थ्रेड की प्रतीक्षा कर रहा है।
समयबद्ध प्रतीक्षा: प्रतीक्षा के समान, लेकिन एक निर्दिष्ट समय सीमा के साथ।
समाप्त: थ्रेड ने अपना निष्पादन पूरा कर लिया है।
मल्टीथ्रेडिंग में सिंक्रोनाइज़ेशन: जब कई थ्रेड एक साथ साझा संसाधनों तक पहुंचते हैं तो समवर्ती समस्याएं उत्पन्न होती हैं। सिंक्रोनाइज़ेशन यह सुनिश्चित करता है कि एक समय में केवल एक थ्रेड ही संसाधन तक पहुंच सकता है। इसे 'सिंक्रोनाइज़्ड' कीवर्ड का उपयोग करके हासिल किया जाता है।
जावा कोड:
class SharedResource { private int count = 0; public synchronized void increment() { count ; } }
निष्कर्ष:
जावा में मल्टीथ्रेडिंग कुशल और प्रतिक्रियाशील एप्लिकेशन विकसित करने के लिए एक शक्तिशाली उपकरण है। आम नुकसान से बचते हुए मल्टीथ्रेडिंग की पूरी क्षमता का दोहन करने के लिए थ्रेड निर्माण, सिंक्रोनाइज़ेशन और सर्वोत्तम प्रथाओं को समझना महत्वपूर्ण है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3