"Hello, Amigo! Ngayon ay magkakaroon tayo ng maikli ngunit kawili-wiling aralin. Sasabihin ko sa iyo ang tungkol sa yield , isang static na paraan ng Thread class."

Sinabi na sa iyo ni Ellie na ang processor ay patuloy na nagpapalipat-lipat sa pagitan ng mga thread. Ang bawat thread ay inilalaan ng isang maliit na piraso ng oras ng processor, na tinatawag na quantum . Kapag nag-expire ang oras na ito, lilipat ang processor sa isa pang thread at magsisimulang isagawa ang mga command nito. Hinahayaan ka ng pagtawag Thread.yield()na tapusin nang maaga ang dami ng kasalukuyang thread. Sa madaling salita, sinasabi nito sa processor na lumipat sa susunod na thread.

"Ngunit bakit kailangang ibigay ng isang thread ang oras nito sa isa pang thread?"

"Hindi ito madalas mangyari. Ang pagtawag sa yield ay nangangahulugang «ang aming thread ay tapos na nang maaga sa iskedyul» at ang command pagkatapos ng yield ay magsisimula sa isang full time quantum. Kaya, ang mga pagkakataon na ito ay magambala ay mas mababa. Lalo na kung ito ay isang maikling utos, ibig sabihin, hindi ito magtatagal upang maisakatuparan. Ang diskarte na ito ay maaaring gamitin upang i-optimize ang ilang mga proseso."

Masasabi ko rin sa iyo na ang Thread.sleep(0) ay talagang gumagana sa parehong paraan. Sa palagay ko hindi mo gagamitin ang paraan ng pagbubunga sa simula, ngunit kapaki-pakinabang na malaman ang tungkol dito.