<वें शैली ="चौड़ाई: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"); } }