के बीच मतभेद मैं स्विंगवर्कर का उपयोग कर रहा हूं जो मेरे द्वारा किए जा रहे एप्लिकेशन पर कुछ भारी लोड कार्यों को निष्पादित करने के लिए कर रहा है। आज हालांकि मैं निर्वाहक वर्ग और इस उदाहरण भर में मिल गया:स्विंगवर्कर और एक्जिक्यूटर
Executors.newCachedThreadPool().execute(new Runnable() {
public void run() {
someTask();
});
किसी कारणों से व्याख्या कर सकते हैं क्यों एक SwingWorker बजाय ऊपर के उदाहरण का प्रयोग करेंगे?
SwingWorker worker = new SwingWorker() {
protected Object doInBackground() {
someTask();
return null;
}
};
worker.execute();
चेक [एपीआई] (http://docs.oracle.com/ जावेज/7/डॉक्स/एपीआई/जावैक्स/स्विंग/स्विंगवॉर्कर.html) और आप देखेंगे कि स्विंगवर्कर भविष्य इंटरफेस (और रननेबल) लागू करता है, जिसे एक्जिक्यूटर्स सर्विस की 'सबमिट (...)' विधि से वापस किया जाता है। स्विंग इवेंट थ्रेड के साथ अच्छी तरह से बातचीत करने के लिए एक स्विंगवर्कर बनाया गया है। –