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

जावा में प्रतीक्षा () और नींद () विधि के बीच अंतर?


नींद () विधि एक स्थिर . है थ्रेड . की विधि वर्ग और यह वर्तमान चल रहे धागे को "नॉन-रननेबल" स्थिति में भेज सकता है जबकि प्रतीक्षा करें () विधि एक उदाहरण विधि है, हम इसे थ्रेड ऑब्जेक्ट का उपयोग करके कॉल कर रहे हैं और यह केवल उस ऑब्जेक्ट के लिए प्रभावित होता है। नींद () समय समाप्त होने के बाद मेथड वेकअप या इंटरप्ट () . पर कॉल करें विधि जबकि प्रतीक्षा करें () समय समाप्त होने के बाद विधि वेकअप या कॉल करें सूचित करें () या सूचित करेंसभी() तरीका। नींद () विधि कोई लॉक या मोनिटो जारी नहीं करती है r प्रतीक्षा करते समय प्रतीक्षा करें () प्रतीक्षा करते समय विधि लॉक या मॉनिटर को रिलीज़ करती है।

स्लीप के लिए सिंटैक्स () विधि

public static void sleep(long millis) throws InterruptedException

प्रतीक्षा के लिए सिंटैक्स () विधि

public final void wait() throws InterruptedException

उदाहरण

public class ThreadTest implements Runnable {
   private int number = 10;
   public void methodOne() throws Exception {
      synchronized(this) {
         number += 50;
         System.out.println("Number in methodOne(): " + number);
      }
   }
   public void methodTwo() throws Exception {
      synchronized(this) {
         Thread.sleep(2000); // calling sleep() method 
         this.wait(1000); // calling wait() method
         number *= 75;
         System.out.println("Number in methodTwo(): " + number);
      }
   }
   public void run() {
      try {
         methodOne();
      } catch (Exception e) {
         e.printStackTrace();
      }
   }
   public static void main(String[] args) throws Exception {
      ThreadTest threadTest = new ThreadTest();
      Thread thread = new Thread(threadTest);
      thread.start();
      threadTest.methodTwo();
   }
}

आउटपुट

Number in methodOne(): 60
Number in methodTwo(): 4500

  1. जावा में संग्रह और संग्रह के बीच अंतर?

    संग्रह एक इंटरफ़ेस है जबकि संग्रह एक उपयोगिता . है जावा में कक्षा। सेट, सूची, और कतार संग्रह . के कुछ उप-इंटरफ़ेस हैं इंटरफ़ेस, एक मानचित्र इंटरफ़ेस संग्रह . का भी हिस्सा है फ्रेमवर्क, लेकिन यह इनहेरिट नहीं करता संग्रह इंटरफेस। संग्रह . के महत्वपूर्ण तरीके इंटरफ़ेस हैं जोड़ें (), हटाएं (),

  1. जावा में पेंट () विधि और रिपेंट () विधि के बीच अंतर क्या हैं?

    पेंट() और रीपेंट() पेंट (): यह विधि इस घटक को पेंट करने के लिए निर्देश रखती है। जावा स्विंग में, हम पेंट कॉल के रूप में पेंट () विधि के बजाय पेंटकंपोनेंट () विधि को बदल सकते हैं पेंटबॉर्डर (), पेंटकंपोनेंट () और पेंटचिल्ड्रेन () तरीके। हम इस विधि को सीधे कॉल नहीं कर सकते इसके बजाय हम repaint() . क

  1. जावा में PrintStackTrace () विधि और getMessage () विधि के बीच अंतर क्या हैं?

    अपवाद का विवरण खोजने के दो तरीके हैं, एक है PrintStackTrace () विधि और दूसरा है getMessage () विधि। प्रिंटस्टैकट्रेस()विधि यह वह तरीका है जिसे java.lang.Throwable क्लास में परिभाषित किया गया है और इसे java.lang.Error क्लास और java.lang.Exception क्लास में इनहेरिट किया गया है। यह विधि अपवाद का नाम औ