जावा थ्रेड्स में पैरामीटर्स पास करना
जावा में, रननेबल इंटरफ़ेस को लागू करके थ्रेड्स बनाए जाते हैं। डिफ़ॉल्ट रूप से, Runnable ऑब्जेक्ट कोई तर्क नहीं लेते हैं। हालाँकि, यदि आपको किसी थ्रेड में पैरामीटर पास करने की आवश्यकता है, तो दो रणनीतियाँ हैं: रैपर क्लास या अनाम क्लास। थ्रेड को रैपर क्लास का उपयोग करना है। इसमें एक क्लास बनाना शामिल है जो रननेबल इंटरफ़ेस को लागू करता है और इसके कंस्ट्रक्टर में वांछित मापदंडों को स्वीकार करता है। यहां एक उदाहरण है:
सार्वजनिक वर्ग पैरामीटरयुक्त रननेबल उपकरण रननेबल { निजी अंतिम ऑब्जेक्ट पैरामीटर; सार्वजनिक पैरामीटरयुक्त रननेबल (ऑब्जेक्ट पैरामीटर) { यह.पैरामीटर = पैरामीटर; } सार्वजनिक शून्य रन() { // यहां पारित पैरामीटर का उपयोग करें } }
फिर आप थ्रेड बनाने और उसमें पैरामीटर पास करने के लिए इस क्लास का उपयोग कर सकते हैं:public class ParameterizedRunnable implements Runnable {
private final Object parameter;
public ParameterizedRunnable(Object parameter) {
this.parameter = parameter;
}
public void run() {
// Use the passed parameter here
}
}
Anonymous Classes
Runnable runnable = new ParameterizedRunnable(myParameter);
new Thread(runnable).start();
थ्रेड थ्रेड = नया थ्रेड(() -> { // यहां पारित पैरामीटर का उपयोग करें }, मेरा पैरामीटर); thread.start();
इस उदाहरण में, थ्रेड कंस्ट्रक्टर को दिया गया लैम्ब्डा एक्सप्रेशन एक अज्ञात वर्ग को परिभाषित करता है जो रननेबल इंटरफ़ेस को लागू करता है और इसके पैरामीटर के रूप में myParameter प्राप्त करता है।अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3