"हैलो, अमीगो! आज हमारे पास एक छोटा लेकिन दिलचस्प पाठ होगा। मैं आपको यील्ड के बारे में बताने जा रहा हूं , जो थ्रेड क्लास की एक स्थिर विधि है।"

ऐली ने आपको पहले ही बताया है कि प्रोसेसर लगातार थ्रेड्स के बीच स्विच करता है। प्रत्येक थ्रेड को प्रोसेसर समय का एक छोटा सा टुकड़ा आवंटित किया जाता है, जिसे क्वांटम कहा जाता है । जब यह समय समाप्त हो जाता है, तो प्रोसेसर दूसरे थ्रेड पर स्विच हो जाता है और इसके आदेशों को निष्पादित करना शुरू कर देता है। कॉल करने से Thread.yield()आप वर्तमान थ्रेड के क्वांटम को जल्दी समाप्त कर सकते हैं। दूसरे शब्दों में, यह प्रोसेसर को अगले थ्रेड पर स्विच करने के लिए कहता है।

"लेकिन एक धागे को अपना समय दूसरे धागे को देने की आवश्यकता क्यों होगी?"

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

मैं आपको यह भी बता सकता हूं कि थ्रेड.स्लीप (0) वास्तव में उसी तरह काम करता है। मुझे लगता है कि आप पहली बार में यील्ड मेथड का उपयोग नहीं करेंगे , लेकिन इसके बारे में जानना उपयोगी है।