Ch 10निःशुल्क

Multithreading 136-151

🎓 Vardhman Mahaveer Open University📖 SLM - Programming in JAVA (Hindi)📖 10 नोट्स⏱️ ~15 मिनट

Multithreading 136-151अध्ययन नोट्स

NCERT-संरेखित · 10 नोट्स · 3 निःशुल्क दिखाए गए

10.1 मल्टीथ्रेडिंग का परिचय

व्याख्या

10.1 मल्टीथ्रेडिंग का परिचय

मल्टीथ्रेडिंग जावा प्रोग्रामिंग में एक महत्वपूर्ण अवधारणा है, जिसमें एक ही प्रोग्राम के भीतर कई थ्रेड्स (Threads) एक साथ कार्य कर सकते हैं। थ्रेड, प्रोग्राम के भीतर एक स्वतंत्र निष्पादन इकाई होती है। मल्टीथ्रेडिंग से प्रोग्राम की कार्यक्षमता बढ़ती है और संसाधनों का बेहतर उपयोग होता है। उदाहरण के लिए, यदि कोई प्रोग्राम एक साथ फ़ाइल पढ़ रहा है, नेटवर्क से डेटा प्राप्त कर रहा है और यूज़र इनपुट ले रहा है, तो ये सभी कार्य अलग-अलग थ्रेड्स में किए जा सकते हैं। जावा में मल्टीथ्रेडिंग को Thread क्लास और Runnable इंटरफ़ेस के माध्यम से लागू किया जाता है। मल्टीथ्रेडिंग का मुख्य उद्देश्य CPU के समय का अधिकतम उपयोग करना और प्रोग्राम को अधिक उत्तरदायी बनाना है।

  • मल्टीथ्रेडिंग से प्रोग्राम की गति और उत्तरदायित्व बढ़ता है।
  • थ्रेड्स स्वतंत्र रूप से कार्य कर सकते हैं।
  • जावा में Thread क्लास और Runnable इंटरफ़ेस का प्रयोग होता है।
  • मल्टीथ्रेडिंग संसाधनों का बेहतर उपयोग सुनिश्चित करता है।
  • एक ही प्रोग्राम में कई कार्य समानांतर रूप से किए जा सकते हैं।
  • 📌 थ्रेड: प्रोग्राम की स्वतंत्र निष्पादन इकाई।
  • 📌 मल्टीथ्रेडिंग: एक ही प्रोग्राम में कई थ्रेड्स का एक साथ निष्पादन।

10.2 थ्रेड्स का निर्माण

अवधारणा

10.2 थ्रेड्स का निर्माण

जावा में थ्रेड्स को दो प्रमुख तरीकों से बनाया जा सकता है: (1) Thread क्लास को विस्तार (extend) करके, और (2) Runnable इंटरफ़ेस को लागू (implement) करके। Thread क्लास को विस्तार करने पर, हम run() मेथड को ओवरराइड करते हैं, जिसमें थ्रेड का कार्य लिखा जाता है। Runnable इंटरफ़ेस को लागू करने पर, run() मेथड को इंटरफ़ेस के अनुसार परिभाषित किया जाता है और Thread ऑब्जेक्ट के साथ Runnable ऑब्जेक्ट को पास किया जाता है। दोनों तरीकों में run() मेथड में थ्रेड का मुख्य कार्य लिखा जाता है।

  • थ्रेड्स को Thread क्लास या Runnable इंटरफ़ेस से बनाया जा सकता है।
  • run() मेथड में थ्रेड का कार्य लिखा जाता है।
  • Thread क्लास को विस्तार करने पर अतिरिक्त मेथड्स का उपयोग संभव है।
  • Runnable इंटरफ़ेस से थ्रेड्स अधिक लचीले होते हैं।
  • Thread ऑब्जेक्ट start() मेथड से शुरू होता है।
  • 📌 Thread क्लास: जावा में थ्रेड्स बनाने के लिए मुख्य क्लास।
  • 📌 Runnable इंटरफ़ेस: थ्रेड्स के लिए एक इंटरफ़ेस जिसमें run() मेथड होता है।

10.3 थ्रेड्स का जीवन चक्र

व्याख्या

10.3 थ्रेड्स का जीवन चक्र

थ्रेड का जीवन चक्र पाँच अवस्थाओं में विभाजित होता है: (1) New, (2) Runnable, (3) Running, (4) Waiting/Blocked/Sleeping, (5) Dead। जब थ्रेड ऑब्जेक्ट बनाया जाता है, वह New अवस्था में होता है। start() मेथड से वह Runnable अवस्था में जाता है, जहाँ वह CPU