"สวัสดี Amigo! วันนี้เรามีบทเรียนสั้น ๆ แต่น่าสนใจ ฉันจะบอกคุณเกี่ยวกับyieldซึ่งเป็นวิธีการคงที่ของคลาส Thread"

Ellie ได้บอกคุณแล้วว่าโปรเซสเซอร์จะสลับไปมาระหว่างเธรดอย่างต่อเนื่อง แต่ละเธรดจะได้รับการจัดสรรเวลาส่วนเล็กๆ ของการประมวลผล ซึ่งเรียกว่าควอนตัม เมื่อหมดเวลานี้ โปรเซสเซอร์จะสลับไปยังเธรดอื่นและเริ่มดำเนินการตามคำสั่ง การโทรThread.yield()ทำให้คุณสามารถยุติควอนตัมของเธรดปัจจุบันก่อนกำหนดได้ กล่าวอีกนัยหนึ่งคือบอกให้โปรเซสเซอร์เปลี่ยนไปใช้เธรดถัดไป

"แต่ทำไมด้ายเส้นหนึ่งต้องสละเวลาให้กับอีกเส้นหนึ่งด้วย"

"มันไม่ได้เกิดขึ้นบ่อยๆ การเรียกผลตอบแทนหมายถึง «เธรดของเราเสร็จก่อนกำหนด» และคำสั่งหลังจากให้ผลผลิตจะเริ่มด้วยควอนตัมเต็มเวลา ดังนั้น โอกาสที่จะถูกขัดจังหวะจึงน้อยลง โดยเฉพาะอย่างยิ่งหากเป็นคำสั่งสั้นๆ กล่าวคือ ใช้เวลาไม่นานในการดำเนินการ วิธีนี้สามารถใช้เพื่อเพิ่มประสิทธิภาพกระบวนการบางอย่างได้"

ฉันสามารถบอกคุณได้ว่าThread.sleep(0)ใช้งานได้จริงในลักษณะเดียวกัน ฉันคิดว่าคุณจะไม่ใช้ วิธี ผลตอบแทนมากนักในตอนแรก แต่การรู้ไว้ก็มีประโยชน์