Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

जावा में धागे एक दूसरे के साथ कैसे संवाद करते हैं?

इंटर-थ्रेड संचार i एक दूसरे के साथ धागों का संचार करता है। जावा में इंटर-थ्रेड कम्युनिकेशन को लागू करने के लिए उपयोग की जाने वाली तीन विधियाँ

प्रतीक्षा करें ()

इस विधि के कारण वर्तमान थ्रेड लॉक को रिलीज़ करता है . यह तब तक किया जाता है जब तक कि एक विशिष्ट समय बीत नहीं जाता है या कोई अन्य थ्रेड सूचित करें () . को कॉल करता है या सभी को सूचित करें () इस वस्तु के लिए विधि।

सूचित करें ()

यह विधि एक धागा जगाती है वर्तमान ऑब्जेक्ट के मॉनिटर पर कई थ्रेड्स से बाहर। धागे का चुनाव मनमाना है।

सभी को सूचित करें ()

यह विधि सभी धागों को जगाती है जो वर्तमान वस्तु के मॉनिटर पर हैं।

उदाहरण

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. जावा का उपयोग करके ओपनसीवी के साथ एक छवि को कैसे घुमाएं?

    The warpAffine() Imgproc वर्ग की विधि निर्दिष्ट छवि में एक affine परिवर्तन लागू करती है। यह विधि स्वीकार करती है - स्रोत, गंतव्य और रूपांतरण मैट्रिक्स का प्रतिनिधित्व करने वाली तीन मैट वस्तुएं। आउटपुट छवि के आकार का प्रतिनिधित्व करने वाला एक पूर्णांक मान। एक छवि को घुमाने के लिए एक रोटेशन म

  1. जावा में JTableHeader के प्रत्येक कॉलम में टूलटिप कैसे सेट करें?

    एक JTableHeader JComponent . का उपवर्ग है क्लास में, जब हम एक JTable ऑब्जेक्ट बनाते हैं, तो कंस्ट्रक्टर टेबल कंपोनेंट के हेडर को मैनेज करने के लिए एक नया JTableHeader ऑब्जेक्ट बनाता है। . JTable एक setTableHeader() . की आपूर्ति करता है विधि जो तालिका शीर्ष लेख घटक के JTableHeader ऑब्जेक्ट और एक ge

  1. जावा में जेटीबल की प्रत्येक कॉलम चौड़ाई कैसे बदलें?

    JTable एक जेटेबल JComponent . का उपवर्ग है जटिल डेटा संरचनाओं को प्रदर्शित करने के लिए। एक जेटेबल मॉडल व्यू कंट्रोलर (एमवीसी) डिजाइन पैटर्न का पालन कर सकते हैं डेटा को पंक्तियों . में प्रदर्शित करने के लिए और कॉलम । DefaultTableModel वर्ग AbstractTableModel extend का विस्तार कर सकता है और इस