Itay Razumenko-1 נקודות ·
יותר מ-6 חודשים
( תגובות)
מוניטין: 70
למה?
Gil Ari Agmon1 נקודות ·
יותר מ-6 חודשים
( תגובות)
מוניטין: 90
כשעושים wait על אובייקט, אותו טרד שרץ ישר מפסיק את הריצה שלו ועובר לסוג של WaitingQueue, שם הוא מחכה עד שיעדכנו אותו שאפשר לחזור לגשת לאובייקט. אם יש הרבה טרדים שרוצים גישה לאובייקט והם כולם עושים wait הם ייכנסו לאותו תור ויחכו.
ברגע שקוראים לפוקנציה notify אז הטרד שנכנס ראשון ל-watingQ ייכנס לReadyQ ומשם יחכה שה-Scheduler ייבחר בו. אם קוראים ל-notifyAll אז כל הטרדים שב-WatingQ שמחכים לגישה לאובייקט הזה, יעברו כולם ל-ReadyQ.