join फंक्शन -
join मेथड यह सुनिश्चित करता है कि वर्तमान थ्रेड तब तक प्रतीक्षा करता है जब तक कि वह थ्रेड जिसके साथ इसे जुड़ना है, समाप्त नहीं हो जाता। यह फंक्शन तब तक प्रतीक्षा करता है जब तक कि जिस थ्रेड पर फंक्शन कॉल किया गया था, वह समाप्त नहीं हो जाता।
सिंटैक्स
final void join() throws InterruptedException
आइए एक उदाहरण देखें:
उदाहरण
public class Demo extends Thread{
public void run(){
System.out.println("sample ");
try{
Thread.sleep(10);
}
catch (InterruptedException ie){
}
System.out.println("only ");
}
public static void main(String[] args){
Demo my_obj_1 = new Demo();
Demo my_obj_2 = new Demo();
my_obj_1.start();
System.out.println("पहला ऑब्जेक्ट बनाया गया और शुरू किया गया");
try{
System.out.println("ट्राई ब्लॉक में, पहले ऑब्जेक्ट को join फंक्शन के साथ कॉल किया गया है");
my_obj_1.join();
}
catch (InterruptedException ie){
}
System.out.println("दूसरा ऑब्जेक्ट शुरू किया गया है");
my_obj_2.start();
}
}
आउटपुट
पहला ऑब्जेक्ट बनाया गया और शुरू किया गया ट्राई ब्लॉक में, पहले ऑब्जेक्ट को join फंक्शन के साथ कॉल किया गया है sample only दूसरा ऑब्जेक्ट शुरू किया गया है sample only
Demo नामक एक क्लास Thread क्लास को एक्सटेंड करती है। यहां, एक run फंक्शन परिभाषित किया जाता है जिसमें एक ट्राई कैच ब्लॉक परिभाषित किया जाता है। यहां, ट्राई ब्लॉक में, स्लीप फंक्शन को कॉल किया जाता है और कैच ब्लॉक को खाली छोड़ दिया जाता है। मुख्य फंक्शन में, Demo ऑब्जेक्ट के दो इंस्टेंस बनाए जाते हैं। पहला ऑब्जेक्ट शुरू किया जाता है और इसे join फंक्शन का उपयोग करके कॉल किया जाता है। वही दूसरे ऑब्जेक्ट के साथ भी किया जाता है और संदेश प्रासंगिक रूप से प्रदर्शित किए जाते हैं।