"Hallo, Amigo! Vandaag hebben we een korte maar interessante les. Ik ga je vertellen over opbrengst , een statische methode van de klasse Thread."

Ellie heeft je al verteld dat de processor constant wisselt tussen threads. Elke thread krijgt een klein stukje processortijd toegewezen, een zogenaamde quantum . Wanneer deze tijd verstrijkt, schakelt de processor over naar een andere thread en begint met het uitvoeren van zijn opdrachten. Door te bellen Thread.yield()kunt u het kwantum van de huidige thread vroegtijdig beëindigen. Met andere woorden, het vertelt de processor om over te schakelen naar de volgende thread.

"Maar waarom zou een thread zijn tijd moeten besteden aan een andere thread?"

"Het gebeurt niet vaak. Het aanroepen van opbrengst betekent dat "onze thread klaar is met zijn beurt voor op schema" en dat het commando na de opbrengst zal beginnen met een fulltime kwantum. De kans dat deze wordt onderbroken, is dus kleiner. Vooral als het een korte opdracht is, dat wil zeggen dat het niet lang duurt om uit te voeren. Deze aanpak kan worden gebruikt om sommige processen te optimaliseren."

Ik kan je ook vertellen dat Thread.sleep(0) eigenlijk op dezelfde manier werkt. Ik denk dat je de opbrengstmethode in het begin niet veel zult gebruiken, maar het is handig om er meer over te weten.