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

शेड्यूल्ड थ्रेड पूल और सिंगल थ्रेड एक्ज़ीक्यूटर के बीच अंतर।


<वें शैली ="चौड़ाई:7.483%; पाठ-संरेखण:केंद्र;">कुंजी
Sr. नहीं. अनुसूचित थ्रेड पूल सिंगल थ्रेड एक्ज़ीक्यूटर
1
मूलभूत
एक थ्रेड पूल बनाता है जो किसी दिए गए विलंब के बाद चलने के लिए या समय-समय पर निष्पादित करने के लिए कमांड शेड्यूल कर सकता है।
कार्यों को क्रमिक रूप से निष्पादित करने की गारंटी है, और किसी भी समय एक से अधिक कार्य सक्रिय नहीं होंगे
2
कतार
यह कार्यों को संग्रहीत करने के लिए Delay Queue का उपयोग करता है। समय की देरी के आधार पर कार्य को शेड्यूल करें।


यह ब्लॉकिंग क्यू का उपयोग करता है।


3
थ्रेड लाइफटाइम
टी पूल में रखने के लिए थ्रेड्स की संख्या, भले ही वे निष्क्रिय हों
कार्य के कारण मारे जाने पर थ्रेड को फिर से बनाएँ।
4.
थ्रेड पूल का आकार
इसमें हमेशा एक ही थ्रेड चल रहा होता है।
थ्रेड पूल शून्य थ्रेड से पूर्णांक तक बढ़ सकता है।MAX_VALUE
5.
केस का प्रयोग करें
जब हम समवर्ती कार्य को सीमित करना चाहते हैं, तो हमें फिक्स्डथ्रेडपूल का उपयोग करना चाहिए
इस प्रकार के पूल का उपयोग तब किया जा सकता है जब आप यह सुनिश्चित करना चाहते हैं कि टास्क1 हमेशा टास्क2 से पहले चलना चाहिए।

अनुसूचित थ्रेडपूल का उदाहरण

public class ScheduledThreadPoolExample {
   public static void main(String args[]) {
      ScheduledExecutorService services = Executors.newScheduledThreadPool(10);
      services.schedule(new Task(), 10, TimeUnit.SECONDS);
      services.scheduleAtFixedRate(new Task(), 15, 10, TimeUnit.SECONDS);
      //(new Thread(new Main())).start();
   }
}
public class Task implements Runnable {
   @Override
   public void run() {
      System.out.println("In Run");
   }
}

SingleThreadExecutor का उदाहरण

public class Main {
   public static void main(String args[]) {
      ExecutorService services = Executors.newSingleThreadExecutor();
      Future<?> future = services.submit(new Task());
   }
}
public class Task implements Runnable {
   @Override
   public void run() {
      System.out.println("In Run");
   }
}

  1. जावा में प्रतीक्षा और नींद के बीच अंतर

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

  1. जावा में थ्रेड और रननेबल के बीच अंतर

    निष्पादन का एक नया धागा बनाने के दो तरीके हैं। एक वर्ग को थ्रेड वर्ग का उपवर्ग घोषित करना है। इस उपवर्ग को थ्रेड क्लास की रन विधि को ओवरराइड करना चाहिए। उपवर्ग का एक उदाहरण तब आवंटित और शुरू किया जा सकता है। थ्रेड बनाने का दूसरा तरीका एक वर्ग घोषित करना है जो रननेबल इंटरफ़ेस को लागू करता है। वह वर्

  1. जावा में अपवाद और त्रुटि के बीच अंतर

    अपवाद और त्रुटियां दोनों थ्रोएबल वर्ग के उपवर्ग हैं। त्रुटि एक समस्या को इंगित करती है जो मुख्य रूप से सिस्टम संसाधनों की कमी के कारण होती है और हमारे आवेदन को इस प्रकार की समस्याओं को नहीं पकड़ना चाहिए। त्रुटियों के कुछ उदाहरण सिस्टम क्रैश त्रुटि और स्मृति त्रुटि से बाहर हैं। त्रुटियां ज्यादातर रनट