"हॅलो, अमिगो! आज आपण एक लहान पण मनोरंजक धडा घेणार आहोत. मी तुम्हाला उत्पन्नाबद्दल सांगणार आहे , थ्रेड वर्गाची एक स्थिर पद्धत."

एलीने तुम्हाला आधीच सांगितले आहे की प्रोसेसर सतत थ्रेड्स दरम्यान स्विच करतो. प्रत्येक थ्रेडला प्रोसेसर वेळेचा एक छोटा तुकडा वाटप केला जातो, ज्याला क्वांटम म्हणतात . ही वेळ कालबाह्य झाल्यावर, प्रोसेसर दुसर्‍या थ्रेडवर स्विच करतो आणि त्याच्या आदेशांची अंमलबजावणी सुरू करतो. कॉल केल्याने Thread.yield()तुम्हाला सध्याच्या थ्रेडचे क्वांटम लवकर संपवता येते. दुसऱ्या शब्दांत, ते प्रोसेसरला पुढील थ्रेडवर जाण्यास सांगते.

"पण एका धाग्याने दुसर्‍या धाग्यावर वेळ देण्याची गरज का पडेल?"

"हे वारंवार घडत नाही. उत्पन्न कॉल करणे म्हणजे «आमचा धागा शेड्यूलच्या वळणाच्या आधी पूर्ण झाला आहे» आणि उत्पन्नानंतरची आज्ञा पूर्णवेळ क्वांटमसह सुरू होईल. अशा प्रकारे, त्यात व्यत्यय येण्याची शक्यता कमी आहे. विशेषत: जर ती एक लहान कमांड असेल, म्हणजे ती कार्यान्वित होण्यास जास्त वेळ लागणार नाही. हा दृष्टिकोन काही प्रक्रियांना अनुकूल करण्यासाठी वापरला जाऊ शकतो."

मी तुम्हाला सांगू शकतो की Thread.sleep(0) प्रत्यक्षात त्याच प्रकारे कार्य करते. मला वाटते की तुम्ही प्रथम उत्पादन पद्धतीचा फारसा वापर करणार नाही , परंतु त्याबद्दल जाणून घेणे उपयुक्त आहे.