কম্পিউটার টিউটোরিয়াল

জাভাতে থ্রেডগুলো একে অপরের সাথে কীভাবে যোগাযোগ করে


ইন্টার-থ্রেড কমিউনিকেশন হলো থ্রেডগুলোর একে অপরের সাথে যোগাযোগ। জাভাতে ইন্টার-থ্রেড কমিউনিকেশন ইমপ্লিমেন্ট করার জন্য তিনটি মেথড ব্যবহৃত হয়:

wait()

এই মেথড করেন্ট থ্রেডকে লক রিলিজ করতে বাধ্য করে। এটি ততক্ষণ চলছে যতক্ষণ না নির্দিষ্ট সময় বीतায় বা অন্য কোনো থ্রেড এই অবজেক্টের জন্য notify() বা notifyAll() মেথড কল করে।

notify()

এই মেথড করেন্ট অবজেক্টের মনিটরে একাধিক থ্রেডের মধ্যে একটি থ্রেডকে জেগায়। থ্রেডের চয়েস آرবিট্রারি।

notifyAll()

এই মেথড করেন্ট অবজেক্টের মনিটরে থাকা সকল থ্রেডকে জেগায়।

উদাহরণ

class BankClient {    int balAmount = 5000;    synchronized void withdrawMoney(int amount) {       System.out.println("Withdrawing money");       balAmount -= amount;       System.out.println("The balance amount is: " + balAmount);    }    synchronized void depositMoney(int amount) {       System.out.println("Depositing money");       balAmount += amount;       System.out.println("The balance amount is: " + balAmount);       notify();    } } public class ThreadCommunicationTest {    public static void main(String args[]) {       final BankClient client = new BankClient();       new Thread() {          public void run() {             client.withdrawMoney(3000);          }       }.start();       new Thread() {          public void run() {            client.depositMoney(2000);          }       }.start();    } }

আউটপুট

Withdrawing money The balance amount is: 2000 Depositing money The balance amount is: 4000

  1. Eclipse-এ OpenCV Java সেটআপ

  2. জাভা ব্যবহার করে ওপেনসিভিতে চিত্র কীভাবে ঘুরাবেন?

  3. জাভাতে JTableHeader-এর প্রতিটি কলামে টুলটিপ সেট করা

  4. জাভাতে JTable-এর প্রতিটি কলামের প্রস্থ কীভাবে পরিবর্তন করবেন?