কম্পিউটার

জাভাতে থ্রেড হস্তক্ষেপ ত্রুটি


থ্রেড ইন্টারফারেন্স এরর -

ধারণাটি বোঝার জন্য একটি উদাহরণ দেখা যাক

উদাহরণ

import java.io.*;
class Demo_instance{
   static int val_1 = 6;
   void increment_val(){
      for(int j=1;j<11;j++){
         val_1 = val_1 + 1;
         System.out.println("The value of i after incrementing it is "+val_1);
      }
   }
   void decrement_val(){
      for(int j=1;j<11;j++){
         val_1 = val_1 - 1;
         System.out.println("The value of i after decrementing it is "+val_1);
      }
   }
}
public class Demo{
   public static void main(String[] args){
      System.out.println("Instance of Demo_instance created");
      System.out.println("Thread instance created");
      final Demo_instance my_inst = new Demo_instance();
      Thread my_thread_1 = new Thread(){
         @Override
         public void run(){
            my_inst.increment_val();
         }
      };
      Thread my_thread_2 = new Thread(){
         @Override
         public void run(){
            my_inst.decrement_val();
         }
      };
      my_thread_1.start();
      my_thread_2.start();
   }
}

আউটপুট

Instance of Demo_instance created
Thread instance created
The value of i after incrementing it is 7
The value of i after incrementing it is 7
The value of i after decrementing it is 6
The value of i after incrementing it is 8
The value of i after decrementing it is 7
The value of i after incrementing it is 8
The value of i after incrementing it is 8
The value of i after decrementing it is 7
The value of i after incrementing it is 9
The value of i after decrementing it is 8
The value of i after decrementing it is 7
The value of i after decrementing it is 6
The value of i after decrementing it is 5
The value of i after decrementing it is 4
The value of i after decrementing it is 3
The value of i after decrementing it is 2
The value of i after incrementing it is 3
The value of i after incrementing it is 4
The value of i after incrementing it is 5
The value of i after incrementing it is 6

'ডেমো_ইনস্ট্যান্স' নামের একটি ক্লাস একটি স্ট্যাটিক মান এবং একটি অকার্যকর ফাংশন 'ইনক্রিমেন্ট_ভাল' সংজ্ঞায়িত করে, সংখ্যার একটি সেটের উপর থিটারেট করে এবং এটিকে বৃদ্ধি করে এবং কনসোলে প্রদর্শন করে। 'decrement_val' নামের আরেকটি ফাংশন প্রতিবার সংখ্যার সেট এবং হ্রাসের উপর পুনরাবৃত্তি করে এবং কনসোলে আউটপুট প্রদর্শন করে।

ডেমো নামের একটি ক্লাসে প্রধান ফাংশন রয়েছে যা ক্লাসের একটি উদাহরণ তৈরি করে এবং নতুন থ্রেড তৈরি করে। এই থ্রেডটি ওভাররাইড করা হয়েছে, এবং এই অবজেক্ট ইনস্ট্যান্সে রান ফাংশন কল করা হয়েছে। দ্বিতীয় থ্রেডের জন্যও একই কাজ করা হয়। এই উভয় থ্রেডকে তখন 'স্টার্ট' ফাংশন দিয়ে ডাকা হয়।


  1. জাভাতে থ্রেড অগ্রাধিকারের গুরুত্ব?

  2. কিভাবে আমরা জাভাতে একটি থ্রেড বন্ধ করতে পারি?

  3. জাভাতে ইউজার থ্রেড বনাম ডেমন থ্রেড?

  4. ঠিক করুন:ERR_SOCKET_NOT_CONNECTED