কম্পিউটার

জাভা কনকারেন্সি - join() পদ্ধতি


যোগদান ফাংশন

এই ফাংশনটি একটি থ্রেড কার্যকর করার শুরুতে অন্য থ্রেডের সম্পাদনের শেষ পর্যন্ত যোগদান করতে ব্যবহৃত হয়। এইভাবে, এটি নিশ্চিত করা হয় যে দ্বিতীয় থ্রেডটি কার্যকর করা বন্ধ না করা পর্যন্ত প্রথম থ্রেডটি চলবে না। এই ফাংশনটি থ্রেডটি বন্ধ করার জন্য নির্দিষ্ট সংখ্যক মিলিসেকেন্ডের জন্য অপেক্ষা করে৷

আসুন একটি উদাহরণ দেখি -

উদাহরণ

import java.lang.*;
public class Demo implements Runnable{
   public void run(){
      Thread my_t = Thread.currentThread();
      System.out.println("The name of the current thread is " + my_t.getName());
      System.out.println("Is the current thread alive? " + my_t.isAlive());
   }
   public static void main(String args[]) throws Exception{
      Thread my_t = new Thread(new Demo());
      System.out.println("The instance has been created and started");
      my_t.start();
      my_t.join(30);
      System.out.println("The threads will be joined after 30 milli seconds");
      System.out.println("The name of the current thread is " + my_t.getName());
      System.out.println("Is the current thread alive? " + my_t.isAlive());
   }
}

আউটপুট

The instance has been created and started
The threads will be joined after 30 milli seconds
The name of the current thread is Thread-0
The name of the current thread is Thread-0
Is the current thread alive? true
Is the current thread alive? true

Demo নামের একটি ক্লাস Runnable ক্লাস বাস্তবায়ন করে। একটি 'রান' ফাংশন সংজ্ঞায়িত করা হয় যা বর্তমান থ্রেডটিকে একটি নতুন তৈরি থ্রেড হিসাবে বরাদ্দ করে। প্রধান ফাংশনে, থ্রেডের একটি নতুন দৃষ্টান্ত তৈরি করা হয় এবং এটি 'স্টার্ট' ফাংশন ব্যবহার করে শুরু হয়। এই থ্রেড একটি নির্দিষ্ট সময় পরে অন্য থ্রেড সঙ্গে যোগদান করা হয়. প্রাসঙ্গিক বার্তাগুলি স্ক্রিনে প্রদর্শিত হয়৷


  1. জাভাতে Thread.start() এর পরিবর্তে Thread.run() কে কখন কল করবেন?

  2. জাভাতে বেনামী ক্লাস ব্যবহার করে কীভাবে একটি থ্রেড তৈরি করবেন?

  3. জাভাতে isDaemon() পদ্ধতির গুরুত্ব?

  4. জাভা 8 এ ইন্টারফেস বর্ধন