t.start()
यह वह विधि है जो लाइब्रेरी आपके कोड को कॉल करने के लिए प्रदान करती है जब आप एक नया धागा चाहते हैं।
r.run()
वह विधि है जिसे आप लाइब्रेरी के लिए नए थ्रेड में कॉल करने के लिए प्रदान करते हैं ।
इनमें से अधिकांश उत्तर बड़ी तस्वीर को याद करते हैं, जो कि, जहां तक जावा भाषा का संबंध है, किसी भी अन्य दो विधियों के बीच t.start()
और अंतर नहीं r.run()
है।
वे दोनों ही तरीके हैं। वे दोनों उस थ्रेड में चलते हैं , जिसने उन्हें बुलाया था । वे दोनों जो कुछ भी करने के लिए कोडित किए गए थे, और फिर वे दोनों वापस आ गए, अभी भी एक ही धागे में, अपने कॉलर्स को।
सबसे बड़ा अंतर यह है कि के लिए कोड के सबसे अधिक है t.start()
है देशी कोड, जबकि, ज्यादातर मामलों में, के लिए कोड r.run()
शुद्ध होने के लिए जावा जा रहा है। लेकिन यह बहुत अंतर नहीं है। कोड है। मूल कोड खोजने के लिए कठिन है, और समझने में कठिन है जब आप इसे ढूंढते हैं, लेकिन यह अभी भी कोड है जो कंप्यूटर को बताता है कि क्या करना है।
तो, क्या करता t.start()
है?
यह एक नया देशी धागा बनाता है, यह उस धागे को कॉल करने की व्यवस्था करता है t.run()
, और फिर यह ओएस को नए धागे को चलाने के लिए कहता है। फिर लौट आता है।
और क्या करता r.run()
है?
मजेदार बात यह है कि, यह सवाल पूछने वाला व्यक्ति वह व्यक्ति है जिसने इसे लिखा है । r.run()
जो कुछ भी आप (यानी, डेवलपर जिसने इसे लिखा है) ने इसे करने के लिए डिज़ाइन किया है।