SwingWorker एक आम पैटर्न के एक कार्यान्वयन है (नेट में मैं पढ़ा इसके लिए है
GuiWorker
BackgroundWorker), तो आपको एक जीयूआई कार्यक्रम में कुछ काम करना है जहां, लेकिन जीयूआई उत्तरदायी रखें। समस्या यह है कि अक्सर जीयूआई पुस्तकालय बहु थ्रेड सुरक्षित नहीं होते हैं, इसलिए ऐसे श्रमिकों को लागू करने का सामान्य तरीका एप्लिकेशन के ईवेंट लूप में संदेशों को स्थानांतरित करने के लिए लाइब्रेरी के संदेश लूप का उपयोग करना है।
ये कक्षाएं आपको आसानी से अपने जीयूआई अपडेट करने की अनुमति देती हैं। आम तौर पर, उनके पास update(int status)
विधि है जिसे थ्रेड द्वारा बुलाया जाता है, कक्षा द्वारा भेजा जाता है, और जीयूआई द्वारा संभाला जाता है, जबकि धागा अपना काम जारी रखता है।
सामान्य धागे का उपयोग करके, आपको इस कार्य के लिए अपने स्वयं के कार्यक्रम या कुछ अन्य संदेश तंत्र को कोड करना होगा, यदि आपको अक्सर इस कार्यक्षमता की आवश्यकता होती है तो दर्द हो सकता है। उदाहरण के लिए जावा में invokeLater का उपयोग करना, आप काम करने के लिए कोड में gui को अद्यतन करने के लिए कोड को इंटरमीक्स करेंगे। स्विंगवर्कर आपको चीजों को अलग रखने की अनुमति देता है।
स्रोत
2008-11-11 19:19:01
* खांसी * "एकीकृत" रास्ता * खांसी * – Rob
@ रोब ने अंततः टाइपो को ठीक किया। केवल 3 साल – basszero